If you diagree with a officers action you take it up with his C.O. or get a lawyer, you don't pick up a weapon and approach him, this is being stupid and deserving of getting a world of hurt put on you!!
Bottom line being drunk is public is illegal, if you don't like this law than go through the proper channels to change the law ( Good luck) the officer is simply doing his job of enforcing the law, he didn't make the law, his job is to enforce it, so arguing, complaining etc..... is a useless waist of time. The officer can't pick and choose which laws he enforces, he is required to enforce all of them. I can't even believe I am explaing this.
As for your scenario, "I don't go to Mexico" and if I found myself in a foreign country and would learn and follow the laws of that country, and at no time would I take up a weapon against a officer, as I said this is plain stupid!!