My Dream, it sounds as if you visit the US several times a year and just need some cash for out of pocket expenses. The simplest and cheapest way to get US cash is to find an ATM after crossing the border and use your bank card. You will get the current exchange rate and the only fee will be the ATM fee. Do NOT use your credit card in the ATM, as interest charges will begin to accumulate immediately. Do hold on to a few US dollars when you return to use on your next visit.
OTOH, if you are doing business and need to write cheques in US dollars, it makes sense to open a US dollar account at your bank. Most Canadian banks offer this service.
My bank also lets you order travellers' cheques or foreign currency for courier delivery to your home address. However, you will pay an exchange premium plus the cost of the courier. If that's what you need, you could just visit your bank. After all, you have the time!