Not to say the thing can't be optimised (put 'Ships Internationally' under the button perhaps) but the idea that availability of something on a web shop would necessarily be tied to the currency its sold in is just really strange to me.
The only things I don't expect to be able to buy from overseas are certain big brand items (where they have a distribution agreement with a local company) and media streaming services (which are often geoblocked)...
But the reason I haven't done it is that if I actually charge in USD, but quote the price converted to EUR, since it's a subscription it might change over time. So you might sign up at 26.38 EUR / month but maybe in the future end up paying more than 30 EUR / month if the currency fluctuates.
For two currencies I could just charge in the original currency and take the risk myself, but only for those my gateway would support. It would also might bookkeeping more complicated.
I guess even for one-time payments the price advertised might differ a bit from what actually gets charged, since currency rates fluctuate quickly. Might be off-putting to see the price quoted as 29.95 EUR but then actually get a charge of 30.02 EUR.