We just returned from our honeymoon to Alaska on Royal Caribbean....7 night cruise!
Overall, I was able to eat and did not get sick - at all. I relied on the ship - didn't risk eating in port at any location.
The main dining room was very helpful, and we opted to eat there every night. They brought me gluten-free bread each evening - I didn't even have to ask. The only night they "slipped" was when we ate at the captain's table, and they gave me the gluten-free bread from a basket with wheat bread in it. No biggy, though. It was apparent that they wanted the service at that table to be more smooth and sophisticated, and it was only one night.
They always warned me when something I requested contained flour, although one night they did suggest a pasta appetizer.
Overall, I felt confident. I knew what I was and was not able to have and they did their best to help. They wouldn't let me eat the mashed potatos (instant) because they came from a facility off of the ship. (I assured them the flake kind would be ok, but they refused to give it to me - they were MORE cautious then I was!)
Lunch was a little more difficult b/c we tried to eat in the casual buffet, rather than the dining room. Mostly I had rice and veggies - and only became frustrated after watching my hubby have delicious meals off the buffet that I could not eat. BUT one day they have creme brulee in the buffet room, and I was VERY happy with that!
I did pack a lot of snacks (helped with the breakfast, lunch, and time off of the ship), but like I said I was really pleased and would sail with them again.
I do want to mention, though, that we made our reservation on-line through the RC site, and I indicated the special diet through the reservation. I called prior to the trip to verify that they had the information correct, and they had NO record that I had requested the special diet. YIKES! SO glad I called! On the phone they were helpful and modified the reservation, and all went smoothly. Definitely call!!