We used to give them a whack on the way INTO the restaurant/church/airplane just as a reminder of what was to be expected in the event of a whine attack. Consequently I had 4 kids I could take anywhere.
I was the same way with ours. You want to scream and cry? Good, let me give you something to cry about! And then whack them good...this kind of behavior stops real quick. We never had our son throw a temper tantrum in public.