Assuming you solved any shares recently, the payout should occur immediately each time the pool finds a block. This lately has been happening roughly once per hour on average, though there is variance, so in some cases it can be several hours before this happens, and others it can happen several times in the same hour.
p2pool's output shows lines that start out like:
2012-03-02 01:35:13.388236 Shares: 336 (31 orphan, 4 dead) …
which are the number of actual shares you've found. As long as the first number is higher than zero and is greater than the sum of the orphaned and dead shares, it should be working and you should be getting some kind of payment eventually.
I believe these list the stats for everyone on the p2pool network, not just those connected to your particular p2pool instance.
When does this get paid and does my pool have to be active at time of payment to receive it (it's only on during working hours)
It had been once per day at roughly the same time (~16:00 UTC), but the last few days it has gotten increasingly intermittent and sporadic. Not sure what's up.
I'm pretty sure it's based on the p2pool block chain which means that as long as your miner has been active within some time (24 hours or so?) you would receive something even if not active right at the time it's sent out.
Hopefully someone can clarify this or correct me if I'm wrong.