I think it is like Dave said.. Its the preference of the captain. I have been on Carnival ships that ship time is the time zone you boarded in and I have been on ships that change time. It may have to do with how many zones you cross. Maybe for one time zone they don't bother, but for more than one, it can be a problem with the port staff and they change it?
Carnival Cruise Lines:
Fantasy 90, Celebration 95, Victory 05, Conquest 05, Spirit 6/06, Freedom 6/08, Holiday 7/08, Victory 6/09, Valor 9/09, Dream 6/10, Splendor 8/10,Conquest 8/11,Magic 11/11,Triumph 4/12,Spirit 7/12,Freedom 11/12, Triumph 2/13 - The fire cruise
NCL Dream October 2006, RCCL Mariner OTS June 2007, Celebrity Silhouette 2013