The ADA applies to cruise ships cruising out of US ports, so, yes, they legally have to allow service dogs on board (for the other cruiselines, too).
If you don't want turf, request another surface, such as Cypress mulch. That's the surface
Royal Caribbean provided for my SD (in a small wood box, not a kiddie pool). I had a balcony, but they put the potty box on the other side of the ship (almost all the way forward and down five floors, my room being almost all the way aft). Tip: if your friend doesn't like where they put the box, tell her to make them move it! I have read of somebody who has had ships put the boxes close to their stateroom, in a hallway/stairway that only the crew uses, for instance.
Remember to check the entry regulations for dogs of EVERY foreign port the ship is stopping at, regardless of if your friend is getting off at that port or not. I've heard that some ports will not allow a dog to be on the ship without fitting the requirements (in other words, the ship will not be allowed to dock and ppl will not be happy with your friend...). What ports are you going to?
An SD should never be left in the room alone, though your friend most likely knows that.
Dogs don't normally get seasick, but if you want to be safe, ask the vet what the appropriate amount of medication to give the dog would be. Also, there is an all-natural herbal product called MotionEaze that is for both dogs and humans - you apply it behind the ear and it should help take away seasickness, even if the dog/human is already feeling ill. It can be used as a preventive, too - I didn't think my dog would get sick, but I applied it to her once a day, just in case. (I put it on myself, too, but I also took Bonine once a day, as I am prone to motion sickness.)