Merchants need to pass on the savings of using Bitcoin vs a credit card to the consumer in order to give incentive to adopt Bitcoin. Similar to how a bullion dealer has a check/wire price and a higher credit card price. I think the current BTC fee structure is fine, the problem is the merchant is not passing on the savings of using a system such as Bitcoin on to the consumer.
Who is the consumer in this case? I would argue that the consumer is the store as they are the one that pay for the service. The end consumer does not have any cost from using their credit card, it is a free transaction to them.