The answer to this is no. Most cruise ships can cater for most food requirements be they religious or medical.
Most ships will always have a vegetarian option available, with catering to provide special meals on the spot. The low salt, low carbohydrate and spa options are becoming more popular as well and are often well displayed.
However, the situation with Kosher and Halal food is different. The policies vary between various cruise lines as to availability and quality. This can be seen with the way one cruise line deals with Kosher food.
To ensure they maintain the integrity of the food within the galley environment, one particular cruise line has taken to ordering pre packaged Kosher food, which is loaded on board in sealed plastic containers. These containers are stored separately then, on request are heated, whilst still in the container and served to the passenger in the container to avoid any contact with other surfaces thus ensuring the food maintains it's Kosher integrity.
With Halal, it is slightly less likely to be catered for in terms of land animal dishes, but vegetarian dishes and water animal dishes should be plentiful.
Best practice is to contact the cruise line directly, or indeed, once you have selected a cruise, contact a travel agent, and check if the type of catering is available. Many cruise lines will ensure your needs are catered for even if this means negotiating special stocks just for you.
Once you have confirmed that a cruise will cater for your requirements, it is always worthwhile to ensure, as soon as you board, you visit the restaurant manager and ensure your special requirements are noted. This is to ensure the message has arrived at the restaurant as the special requirements may affect your seating plan. This is not done for any other reasons except some cruise lines prefer to use dedicated waiters to handle Kosher or Halal to ensure they are kept completely separate.
However, whatever your special food requirements are, someone will cater for it. At the end of the day, you are the passenger and there will be a cruise that will cater for you. And as more and more of the unsuitable cruise lines begin to realise that they are losing valuable business then the they will change. Until then, there are plenty of cruise companies that will ensure you are catered for, without having to go vegetarian or solely eat fish.