Totally agree with this.. My DS born august 09 is so hit and miss with toilet.. Today he pooped in undies twice.. One was even under our bed on the carpet.. When I asked him why he said 'cause you were outside and couldn't take me to the toilet'.. Any other time, he is telling me to go away so he can have peace on the toilet..
James is only 2 months older than yours Doing My Best and sounds similar. Any accident, his response to Why is invariably something like "I was watching tv", "I didn't want to go inside" etc. Silly little things like that that are so frustrating.

To be clear, I've not gone into the realm of punishment, I just feel incredibly frustrated and sometimes it seems like there is nothing else! However, as so many of you have suggested, one thing I havent done is get him to clean up his own mess. I've always had him go get clean undies and clothes, but DH and I have always cleaned up. Great idea - I'll start him on that for the next accident.

Sometimes he has said things like "I like it when you clean my bum", and seeing as there are no accidents when we are out and about, none at childcare, and minimal when its just DH and him, having him clean himself (rather than me do it) shoudl take away some of the fun for him. Fingers crossed this works.