Probably because you are an American and compared to the pay scale in the USA pay is very bad and the hours are very long. This is also the case on all cruiselines, not just Carnival. To be quite honest, I know a number of people that do work for Carnival and all of them are very happy with the company. Some have worked for other lines and state that the Carnival crew are a happier group with much better moral than the others they know of.
Everyone I know who works for Carnival has been with the company forever -- none of them ever leave. I know that waiters and stewards aboard ship get good perks: color TV, two in a cabin, insurance (medical, dental), their family can travel free (in the crew cabin) once per year.
If I were looking for a job with a cruise line, this would be the one I'd personally go to. Crystal Cruises is another excellant company for staff.