macmom, I'm in full agreement with you. Unless the establishment is recommended by the cruise line, avoid it like the plaque(no pun intended). Drink only bottled water and/or soda/beer. No ice.
My husband was in Mexico City 2 weeks ago and they put ice in his beer. He called me saying, "who puts ice in beer?" He lost 10 pounds in 2 weeks being sick.
Double check with the cruiseline to make sure there isn't a stop somewhere for lunch. You can also bring some sandwich ziploc bags from home, grab some food before you leave the ship and take it with you to snack on. We've done that before.
If you're going to Mexico, you can't be too careful with what you eat.