No flames from me. This is exactly what I do with my kids. From an early age, if my kids started acting up, squalling, or falling apart I just packed it in and left. Didn't matter if it was a store, a restaurant, church, park or Chuck E. Cheese. You act up and you're going home, to your room, with no music and no toys. No negotiations. No pleading or threatening. You get one warning. The second infractions results in your removal and punishment. Period. My two older children didn't have any problem understanding the rules and I probably had to remove each of them twice in their lives. My kids have always been easy to take places because we expect them to be well-behaved or we remove them.
Even my mentally handicapped 14yo rarely has tantrums. We know that he cannot sit still and be quiet during concerts, church services, weddings, etc. He has the cognitive skills of a baby. Therefore we hear a lot of squealing, hooting, clapping and other disruptive noises. If we are unable to leave him at home, we take him with us. The very *second* he starts, one of us gets up and removes him from the setting, sometimes staying outside the entire time. Fun? not so much. But I wouldn't even think of subjecting other people to my child's carrying on, I don't care how "special" he is. He doesn't understand manners in formal places. It's my job to take care of it for him.