What are your scan time, queue, and expiry settings? I've had simular problems on p2pool nodes if I didn't use a queue setting of 0
Queue was 0, but scan-time and expiry were both too high. Lowering them [very briefly] bumped the reported hashrate up to 900kh, but since then it's settled back down to around 300kh. Payouts seem much more regular now (I'm on plx.qemulab now - was getting the under-reported hashrate on both p2pools though).
This is my pool, I have no idea why you got low hashrate, I already said that I pointed one of my rigs to pool and noticed average hashrate.
You can try to tune your rig on regular p2pool if you think something wrong with my pool. And also, you can install your own p2pool node.