I have a simular problem with my horse, he starts on the left leg (on the left rein) and then changes as if he's giving up :P, I just trot him and then ask for canter again and repeat. I do that until he is cantering on the left leg for several strides then bring him back to trot (before he changes) and give him a pat. He seems to be getting the idea :) I also do this on a tight left hand circle so is harder for him to change. Hope this helped, sometimes I think empathy os the best way.
Keep your feet on the ground when your head's in the clouds.