How do you know how much a product costs in Bitcoins?
Most websites that accept bitcoins for goods or services work with a service that automatically exchanges the bitcoins they receive for dollars. For that reason, they also use the current exchange rate to calculate the price in Bitcoin.

So basically, when you want to buy a 10 CAD item for bitcoins, the website will calculate how much bitcoins that is and ask you to pay that amount of bitcoins.

And yes, when you hold bitcoins, the price you pay in CAD can vary as the CAD/BTC rate changes.