It looks like the process of migration that you used did not preserve the natural order of the messages. (I.e. the messages were copied from one server to another out of order.)
Hence, when the "new" server receives request for 100 most recent messages, it returns a 7-month old message that was added to that server after the messages from the last week.
When you request not the most recent messages but the most recent dates, the request to the server (and server's response) is done by date.