The travel agency is in fact acting as an agent of Air Canada, so it is not unreasonable for the transaction to be processed in Canada.
I think Citibank's wording on foreign transactions is a bit vague since it doesn't address this situation. I can see where you might feel you have been slighted.
The agency computer is the equivalent of ordering merchandise over the phon. In this case, from Canada.