Cracked it! The parent window never gets a mousedown message when one of its child windows receives one.
I got it to work by simply working out what control was clicked then sending the message to that.