I can only say from the perspective as a business owner - I get why businesses choose to do the surcharges with card transactions. Depending on the company a business goes through to be able to process card payments - it can cost the business itself a chunk of change and takes its own percentage out of the transaction itself (depending on the processing company). So some businesses add on the surcharge to compensate for the percentage the processing company takes out from transactions if the company doesn't charge the business separately to utilize their services. Businesses choosing to wave it for certain people is really them doing a favor and eating some costs and of course they'll do it for regular customers or customers they have good faith in. Of course businesses don't have to do the surcharge thing and just eat the costs, but businesses also want to make money. And it all depends on the companies working with the businesses to process card transactions and how high their fees are. Some companies are more lenient and forgiving than others.
When I take commissions for my art and design work if a customer wants to pay with credit card to process the payment the company I work with takes their own percentage of what's charged. I do my best to find work arounds but if a customer is dead set on paying a certain way I disclose that I have to tack on an extra few dollars for the charge so I'm still fully compensated for my work. As art/design commissions are rarely a business where you get the same person regularly seeking out your services though if someone wants multiple pieces done at once I cut them breaks that way. On the flip side, when I see my regular hairdresser because I see her all the time when I pay with card she chooses to not tack on the surcharge for the card processing because I'm a regular customer and guaranteed future business for her.
If you don't want to worry about potential surcharges cash is best.