What currency did you actually pay for the ticket in? If CAD, then you can reasonably press the agent to charge you the $500 CAD fee. If you paid in USD, then you will probably be forced to pay in USD.
The last time I bought a ticket in a foreign currency (Qatari Riyal), I was charged a change fee in Riyals. But my ticket, etc was completely fared and paid in Riyals. There was no USD equivalency placed on the fare.