Why isn't my Geo Location Multi Currency App correctly identifying currencies?

Choosing Language is taking the translation, but when going to the website (with vpn) for example from Sweden, it should take the Swedish Krona, but it choose the default currency, but more than that i choose the primary location currency.

All the market have the local currency, and i tried from several countries but it always show the primary market (so wrong country and currency)

Any suggestions? it’s always redirecting to the primary