I was actually very surprised by what Disney does not do for Canadian cruisers that rcl does. you can book your reservation in Canadian funds with rcl and that saves a ton.
dcl could easily do this but as yet does not. maybe soon??
rcl also offers a 10% rate for pre booked onboard credits. I was able to purchase $500 u.s. for $550 candian where as that would cost me $675 Canadian at todays rate from a bank or on my cc. dcl could also do something like that.
but, as to the original question, I live close to the boarder and had a target credit card which allowed me to purchase Disney gift cards at 5% off, not much but $50 on every $1000 of your cruise is nothing to sniff at. I stopped doing this as I found target has issues with the knowledge of how their cards worked and it became more of a bother than not.
I also do as a pp mentioned and have a u.s. account that I put money into every few weeks for the cost dollar averaging benefit.
I have a us mastercard so I can do my purchases in u.s. and then I can pay from my u.s. account when I get home. that saves any foreign transaction fees.
plus as an airmile collector I get those on both my u.s. and Canadian credit cards. I can purchase free flights or admission tickets to wdw which helps with the before and after cruise stays.
we fly out of a u.s. city and even with the rate as bad as it is we save tons. our taxes on flights blow my mind. for our next flight if we flew from Toronto round trip would cost us $838.70 with $158.701 being taxes for one person. the same dates with jet blue flying from the u.s. is $332.08 with $49.40 being taxes. even if you converted the u.s. using todays rate of $1.35 cnd per $1 u.s. we save $400 per person. HUGE savings. my advice on flights is if you can shop around, do so. if you have a u.s. airport within a few hours drive it could well be worth your while to save some big $$'s.