I think that works ok. There is a strong profit motive to serve as many people as possible, and there are consequences for getting reputation as “who knows if they’ll serve you”
So, which I would find it distasteful if a store refused to serve Brexiters, I believe the market would sort that out. I’d only be interested in regulation if the problem actually appears.