I can't see any problem with this, based on the following (from halachipedia):
Many poskim are lenient regarding a live-in maid as a worker paid by
the job and not per hour as long as the maid is told explicitly that
she is not required to do them on Shabbos and may do it beforehand or
afterwards. Nonetheless, there's numerous restrictions in order to
permit a maid to perform Melacha for Jews on Shabbat including: not
instructing the non-Jew to do Melacha, not having a possibility of
maris ayin (appearance of sin), not benefiting directly, and not
degrading Shabbat's sanctity.
As I understand this scenario, the Gentile chef (Mr(s.) food-heater) is hired by the cruise line (it doesn't matter if the cruise-line owner is Jewish or not, here.) They get a fixed wage for cooking / warming food for all the passengers. I don't think s/he is specifically being told, "Warm up this specific tray for the Jew on Sabbath." S/he is most likely told, to warm up food when it is meal time, and included in all the food there happens to be some kosher meals. However, according to this citation, it seems that you or the cruise director would need to explicitly explain that the food need not be heated on Shabbat. (I agree that this sounds counter-intuitive esp. for lunchtime, but from my reading, it seems that all you need to do is mention it, and leave the decision to them.)
This sounds similar to a household that has a live-in worker who is told to clean dishes and warm up food for the household and no one is stating when the Gentile should do it.
I assume that the cruise is a mainly non-Jewish cruise. So, chances are that the other passengers don't recognize that this work (if they even understand what a melacha is) is being done in violation of Shabbat. To me, this sounds within the concept similar to "private"; i.e., there is no "Mar'it Ayin" concern.
Despite what I mentioned, read footnote #79 for possible opposition and restrictions.