Merchants do here in Australia.
Visa and MasterCard previously forbade surcharges, until that was ruled monopolistic in a court.
I feel if the card processor is charging the merchant a fee, its only fair to pass that on to card buyers, so that cash buyers don't have to pay the extra for a service they're not using.