Moving a website: the checklist
A move rarely fails on transferring the files and almost always on everything around them.
Before you start
Lower your DNS TTL a day ahead. Make a full backup and check that it is readable.
Test before you switch
Put the site live on the new hosting and test it through your computer's hosts file, before you change DNS. That way you see the errors while the old site is still running.
Do not forget mail
This is where it goes wrong most. If you move the MX record at the same time, mail can arrive in both places during propagation. Create the mailboxes on the new platform first.
After the switch
Check forms, logins, payments and scheduled tasks. Then check certificates: they are tied to the server, not the domain.
Do not cancel too soon
Leave the old hosting running for at least two weeks. It is your safety net and it costs almost nothing.