You're right in getting a Canadian prepaid instead of using your US phone since the roaming charges will kill ya.
Whichever prepaid company you go with, the long distance will work as follows:
If you get a Vancouver number, and you are in Vancouver and call another Vancouver number = local
If you have a Vancouver number, and you are in Vancouver, and call a Toronto number = long distance for you
Vancouver number, you are in Vancouver, and someone calls you (doesn't matter where they are calling from) = local for you
Vancouver number, you are in Toronto, and you call a Vancouver number = long distance
Vancouver number, you are in Toronto, and you call a Toronto number = local
Vancouver number, you are in Toronto, and someone calls you (doesn't matter where they are calling from) = long distance for you (and the other person as well, if they are not calling from Vancouver)
Example: If you are in Toronto, and you have a Vancouver number, and your friend who is right beside you picks up a payphone and calls your Vancouver number, it will be a long distance call for your friend AND for you.
The good news is that 7-11 Speakout and PetroCanada mobility have some of the cheapest long distance rates available for prepaid cellphones (but they are still pricey compared to home phones). The long distance rate for Speakout is $.45/min ($.25 reg. phone rate + $.20 long distance), but the 'effective' rate when you purchase a $75 or $100 airtime card is $.36/min ($.20 reg. airtime + $.16 long distance). The difference in rates is the new wacky speakout math since they offer different rates when purchasing larger top-up cards.
PetroCan Mobility's long distance rates are less expensive at $.30/min ($.20 reg. phone rate + $.10 long distance). But PetroCan doesn't have that "Get $75 off a phone when you buy $100 airtime" deal that Speakout has, but at least you can buy a phone from PetroCan for only $50 and they buy whatever airtime you need.
After playing with the numbers my guess is that if you plan on using less than $40 of airtime (133 minutes = 6 minutes per day average on your trip) then PetroCan is the way to go. If you think you'll use more, then go with Speakout.
(BTW, the reason I used $40 as the cut-off point is because if you bought a $50 phone card from PetroCan with your phone the cost would be the same as the SpeakOut deal, but you'd get less minutes. If you only need to buy 2 x $20 phone cards from PetroCan if will cost less. Plus you may not even need to buy the second one)