Create the same email account on your new server that you had on your old server. Use the same spelling and capitalization.
Give the new email account the same password that you used on your old server. You can change the password after the migration process is done, if desired.
In your local email client, create two new email accounts.
These will both be for the same email address.
They will both use the same password.
They must both be configured to connect using IMAP.
The incoming server (or IMAP server) will be different for each account. You should use your IP address for your new server, and your access domain or IP address for your old server, rather than your domain name, whenever possible. This will avoid any possible DNS conflicts.
With both accounts online, open up the inbox for the account that connects to your old server. Drag and drop messages from this inbox to the inbox on your new server.
That's it! If you have a lot of emails, give the accounts a few minutes to finish syncing up. Once they're done, your old emails will be in your mailbox on the new server.