Debit or credit are good. A lot of stores will not accept American cash, especially in small towns. I suggest carrying a few hundred dollars in Canadian cash. Enough for a full tank of fuel anyway.
Let your bank and credit card company know you are travelling and the dates. We were on a trip that we extended from 2 weeks to 6. We were debiting everything except for withdrawing cash every 2 days. We were in the middle of nowhere and needed cash for gas, no cards accepted. I went to the only ATM and I got a message call bank. I could not get money. The bank had put a hold on our account. There was gas debits daily, hotel debits and the same amount of cash every couple of days. It had added up to over 10K and they wanted to make sure it was us. We were lucky to get through to them, our phone needed charging and there are no pay phones anywhere anymore.