Have your travel agent contact the cruise line with your needs. They are very accomodating in the dining room. But, the buffet is another matter. They can't have separate areas for everyone who has unique dietary needs. But, other than the soy milk, which you might be able to get at the buffet if you ask, there are plenty of healthy foods available. More a matter of sticking to your diet since those buffets can tempt even the most disciplined person.
Also, talk to the maitre d' and your waiter personally. You can talk to the maitre d' the afternoon that you board, then your witer at dinner.
Thanks for the advice. I will call Carnival and discuss it with them since I did not book through a travel agent. I also need to find out if they have distilled water on board or if I can bring it. My husband has sleep apnea and he needs distilled water for his sleeping mask.