You typically do have either a menu selection and/or a buffet for free and the quality of that food is decent.
I was once on a carnival cruise and dinner had steak (filet mignon) on one day and lobster on another one. Both were pretty much OK (had much better ones, but none of it was chewy or wrongly cooked, you could get your steak however you wanted).
There are some restaurants where you can go instead of the included dinner (steak, sushi) but the included dinner is by far from
subpar. At no point at the cruise did I feel the need to pay for one of the specialty restaurants.
Booz is extra, Carnival eg had a 'all you can drink' pass for 50bucks/day (not kidding), or a soda pass for 10-20USD/day (cant remember, didn't take it)
Its rather amusing to see the development here, I lived in the Cayman's not long ago and they have been discussing if they should built a port to increase capacity (3-5 cruise ships per day currently). Pretty much everyone is against it, besides the shops directly at the pier. Contrary to here tough the port is in the center of George Town and not locked up outside.
Also, IMO all ports are completely exchangeable. They could just go around one Island, build four ports on this island and tell the passenger it would be four different Islands. The attractions never have anything to do with the country and are completely exchangeable (does it really matter if you swim with dolphins/turtles/... in country x/y/z, or if you zip-line in country x/y/z).
There is one thing Puerto Plata has for it, Isabel de Torres. While some islands have mountains/volcanos, I don't know anyone that offer a view that high. All the rest is commodity.