Why wouldn't they accept credit cards?
They don't want to pay the fees
They don't have enough credit to get a merchant account
They don't want to report all the transactions
They want to run a cash business
It's really not that uncommon to come across restaurants that do not take cards, if I don't see the logos on the way in, I always ask if I don't have the cash. As already mentioned, many in New York do not, or don't take Amex for example
I also feel it's totally unreasonable for you to blame the restaurant for any of this, they apparently had sineage up that you missed, and you didn't check on the way in.