Aside from Holland America and Princess, cruise lines contract doctors from outside temp agencies. I encountered a very drunk doctor on one of the most expensive ships in the world. This is unfortunate, but the reason you should always buy travel insurance which can get you to Germany if you're in Europe. Never, ever get sick in Italy, I could tell you horror stories.
MSC has been getting negative feedback since they started from many Americans. I think travel agents tell them it's "premium", which isn't true. MSC Cruises calls its ships premium, but they aren't. They're worth what you pay for them, sometimes around $50 per person, per day.