I've seen people advertise "cash or check only .. credit cards accepted with a 3% fee." I know it's not "legal" but I have no issues with it.
So, do you download your music from a torrent? Because that's not legal either, and you should have no issues with it, or your competition doing it that way...
We live in a plastic society now -- it's either a debit or credit card. I don't accept personal checks for example, every single one I've gotten has bounced. I go to Haleem's Mini Mart and IED Lab almost every day, and people buy a cup of coffee and the newspaper with their plastic.
Consider this: If I need cash, I have to either drive 10 miles round trip to my banks ATM for a free transaction, or I could use the ATM at Haleems for $2, or the little bank next door for $3. Or, I can just hand him the plastic, and it costs me no extra. Also, there's a limit on the amount of cash you can draw per day from an ATM, which is far lower than the daily limit of using the plastic directly.
Now, I only use debit cards, but some places process it as a credit card. If they charged me an additional fee, I would not do business with them any longer. So the say $10-20 I spend at the mini mart almost daily would dry up for him. Is it not worth his while to eat the cost, and keep the business? For example, if that $10 netted him $3 in profit, and he had to pay 9 cents for the credit card fee, he still nets $2.91. Now, since I am there almost every day, I am quite friendly with the owner, and he gets quite a volume of traffic. Lots of breakfast food sales (he has a grill), beer sales, lunch sales, gas, etc. If he charged a surcharge, he would lose hundreds per day, instead of dollars per day for the credit card fees -- not logical.
Plus, as mentioned earlier, he gets it back in terms of a tax write off. It's a win-win situation, to NOT use a surcharge.