I normally check before ordering, and just go somewhere else if they don't take it!
Their incentive is that the customer using their card of choice is a happier customer because they're getting their frequent flyer points/purchase security insurance/free extended warranty etc etc, and that they're more likely to return knowing that they can use their card. Or because they're using a corporate card to get work to pay for it. Or because their card may have "no preset spending limit" so they don't think as much about it before charging a purchase... I can keep going haha!
Which is why you'll find almost all major chain stores take Amex & Diners, no minimum purchase and no surcharge, because a customer that might just come in to buy something small, will see something else they like while they're there, and knowing they take charge cards, may return later with the intention of buying it... Also for large merchant clients, Amex usually come down on the merchant rate if they'll accept it with no minimum/no surcharge (ie they offer two rates - one their standard offer, and a reduced rate conditioned on no surcharging etc), or in the case of industries that surcharge by default (telcos, airlines), they give merchant discounts if the card is treated the same as Visa/MasterCard.
And not everyone does what you do and happily hands over a different card. I've walked out of stores before simply because they don't take Amex - and found one of their competitors that did... In terms of ice cream however, I always use my Amex at Baskin & Robbins - no surcharge and the place has no fewer than eight Amex logos in the space of about two metres... But I guess it depends on who the franchise owner is really!