Vancouver Bullion is by far the best: just give them the account #'s, and they will do the transaction within minutes. You even get the $ in the exchanged account, before it is withdrawn in the account you are taking it from.http://www.vbce.ca/
They consistently have better rates than anyone else around. They will give even better rates for volume (> 10K USD), and you can phone in advance - they'll quote you a rate.
I've been using them for years for all foreign currency transactions.