Once again, many folks seem to be missing the point. Businesses, when they write their business model, need to account for all of their costs and build those, along with profit, into their pricing. Unsurprisingly, there is a cost associated with accepting payment, whether that is cash, cheque (listed for completeness only and not current relevance) or card (debit/credit/EFTPOS). Not baking this into the business model is a failure to write a competent business model. There should never have been a need to surcharge.
The same thing applies to penalty rates, where they apply. I will not use businesses that have weekend or public holiday surcharges. They just aren't necessary. The number of weekends and public holidays are known in advance and therefore so are the additional staffing costs. Build them into the business model and keep prices consistent. If you can't compete, don't open on weekends or public holidays.