They also can refuse business due to political stance. They can even give different prices to different customers.
If a company was sniffing around to learn my political views, that would be a bit intrusive, wouldn't it? I wouldn't expect the same level of anonymity if I were the CEO of a company like Mullvad. There's also a disparity between "I'm taking my business elsewhere, good luck without my $10 a month!" (or whatever Mullvad costs...) and "we've decided to not allow you to use this service".
How large a disparity is depends a lot on whether a company has a lock on a market. Generally, if a vendor in a crowded market decided to turn away customers who are XYZ voters (as an example) I'd be more apt to just comment on that as a business strategy than as a "how dare they, they must accept all customers!" Like, if you are one of 20 VPN providers and you think you can be successful by turning away customers.. well, OK. Good luck with that.
If it's a provider with a monopoly that's a bit different. I live in an area with only one choice of provider for electricity. So I don't think they should be allowed to refuse service to anybody who is paying their bill, even people I vehemently disagree with.