I agree--- The cruiselines and captain don't just get up one morning and decide to skip a port that day for no reason.
Normally the ports that are skipped are ports that require tenders to get the passengers ashore and if the water is deemed too rough ( normally a decision made by the local port authorities and the captain ) to safely operate the tenders, then they will cancel that particular port. The number one concern for passengers and crew is safety.
Grand Cayman is a great example of an " iffy " port. The first 4-5 times we went there, we didn't have a problem--then we had two cruises in a row that the port was canceled because the water was too rough to safely tender. Have been back 2-3 times since and never had a problem--so, you never know. Better safe than sorry.
Let the pilot fly the plane--let the captain captain the ship --works better that way !!