At least they're asking you (which I believe they're supposed to do), rather than sneaking it through and trying to claim it's "for your convenience".
Note that most cards with a foreign transaction fee charge it based on where the purchase is made, not the currency, so you'd get hit with it even if the charge was in USD. I pretty much reflexively say "charge it in <local currency> please" as I hand over the card now, though I get strange looks when I say that in the USA by accident :-)