I've found with my seven that if you tell them, "We're going without supper (or lunch) if you're not quiet!" they sit like little angels :-). People often say, "Oh, your kids are so good!" and I respond, "That's because they're hungry!"
I sit in the car with the children, before we go in and review what I expect. It boils down to cooperative, polite and obedient. I give details for the younger ones such as "I expect to correct you only once." I put on the line what is at stake...."You will never see the light of day....not really, but they walk in knowing that good behavior means dessert and bad behavior means a long week.
No, it's because they know you will follow through. They know you're not gonna say "you won't get any supper if you don't sit down", "I mean it", "Now sit down or you won't get any dinner", "if you get up one more time...". I hate when that happens, I just want to go over and say "sit down now!" and give them the "look".
I have to agree with your take on the two year old. They are not the same as having a say 7 year old "climbing the wall like Batman". I would not expect a 2 year old to behave like a 7 year old, unfortunately some of our 7 year olds behave like 2 year olds at restaurants.
I guess I agree to a degree with the owners of the restaurant, if people would make their children behave this wouldn't be a problem. I'm kinda sorry we don't live in a society where we can have a certain amount of tolerance for children (they are not little adults) yet still expect them to behave age appropriately.
We never have problems with our brood in public, either.
When people ask us how we do it, our answer is simple:
In our house, the reward for good behaviour is no punishment.
Everyone over 65 nods approvingly; most people under that age are shocked!