I once bought coins from a reputed jewellery chain and once billing was done and I said I would pay with AMEX, they said they will charge 3% extra. Despite all my arguments and warnings that I will complain, they did not budge and said that it is the company policy and it is openly mentioned in print on their bills as well. To my surprise, their bill actually mentioned that if paid through credit cards, they charged 1.5% extra for all cards and 2.5% for AMEX. On arguing with them further, all they did was they gave me another separate bill for the extra amount they charged. Though I paid, I also felt that here I had evidence that they were doing this malpractice.
However, after raising this with AMEX and with multiple email exchanges, AMEX finally said that while the vendor 'in-principle' should not charge extra, it is their company policy and there was nothing that AMEX could do and the vendors were free to charge that amount. It felt so frustrating, I was more angry at AMEX than the vendor. I guess with acceptance of AMEX already so limited, they did not want to take it up and lose a big national jewellery chain. I did not have the time or the patience to take it up further with RBI, but I did switch my business from that chain to another jewellery chain that does not charge anything extra on any credit card.