Let's see now - you are already stopping in Jamaica (MoBay), and being that is the only port within shouting distance of Grand Cayman, there really aren't any alternatives. Grand Cayman is devastated and will not be able to accept large numbers of passengers. There is nothing Carnival or any other cruise line can do, and none of them will offer any sort of compensation for missing the port.
I'll give you benefit of the doubt of just not knowing the facts. Cruising is somewhat risky, because any port might be cancelled for a variety of reasons. In this case, it's a darn good reason. Continuing to complain about it will only look foolish.