I see how the second case (waiting six months to convert USD to CAD) involves currency risk. But I don't understand how the first case involves currency risk. If I converted some USD into 1.3MM CAD today, and then held it for six months before paying my vendor, what currency risk did I incur that is eliminated by the futures contract?
An FX future has the same currency risk profile as exchanging now. What is different is you trade on margin, and you have interest rate risk in a different currency.
People who actually want to fix an FX rate in the future would use a 'forward', simply a contract to exchange at a later date. Again no change in FX risk.
The true hedge is an FX option, where you can lock in a price (for a fee) yet still back out if you want to.