It is possible using the Stripe gateway and hacking the build_payment_request method in the PaymentsService class.
You'll want to change this line:
$request['currency'] = config_item('store_currency_code');
to accept a POST variable:
$request['currency'] = $this->ee->input->post('currency', true);
Once you've done that, you should be able to pass a 3 letter currency variable through the checkout form, either through a hidden field, or a select dropdown.
I'm basing my currency field based on the billing address, so that the user is charged the currency of the country that they are located in. Example:
<input type="hidden" name="currency" value="{if billing_country == "US"}USD{if:else}CAD{/if}">