Well for future reference, they will not charge any of your cards for a customs payment unless you authorize it. When I get international shipments I usually take out some cash just in case I get hit with customs fees.

So you would have to pay the post man the customs money before he gave you the package.

Also, if you paid for the visa in canadian dollars then you have that much money in canadian dollars. if you are paying for something in american dollars then you do the conversion and that is what your card gets charges.

Glad you got the thermostat!