A hint for when you are going from the canter to the trot. If you are traveling in one direction at the canter on the correct lead, and you stay on the same track, if you rise up on that first trot stride, you will be on the correct diaganol every time. If you are switching directions (going from left lead canter to tracking to theright, or the reverse), if you sit one beat of the trot and then rise up, you'll be correct.
Another thing is that I learned the diaganols by coming up when that inside hind leg hits me from behind (ie when it is coming forward). I spent A LOT of time on the lunge line working on this, some with my eyes closed, and now it just comes naturally. I never have to look, I don't even have to think about it. My body has just gotten to the point that I can automatically feel that hind leg, and it goes with it. It takes a LONG time to get to that point, but it is entirely possible. It just takes work.