Cheating on pooled mining What is stopping me from hacking the mining software such that if I do happen to get the right hash I keep it for myself, but if not then I just submit my work done and get my share of the mined income.

The only way I can think of to check this is for the pools to monitor the block chain and look for suspicious activity, but I'm not sure what this activity would like in practice and that wouldn't just be a higher than elevated rate of whatever they're looking at.

It seems to me that this would be especially attractive on pools like Eligius that do CPPSRB and even more attractive the higher my hash rate as then I have a high chance of getting blocks all to myself.
The way you describe it it's not possible. The pool sends you the template of the block that you ought to be working on. Should you really find a block it is bound to the block template you received from the pool, i.e., the nonce that satisfies the proof-of-work difficulty is only valid because it is valid in combination with the template. Since the block template also includes the coinbase transaction, transferring the reward to the pool operator, you cannot steal the reward.

Hence you cannot work for the pool, creating valid shares, and at the same time work for yourself. You could only not submit the nonce for the valid block to the mining pool, but that would reduce your share of the reward as well.