The only thing I would add is around step #4 somewhere. Some of today's scripts rely heavily on hostnames and contain links within them that point to the domain they are running on. If you're running one of those types of scripts (or even if you've hardcoded full URLs into your web pages), then it will be difficult to test your new server with the temporary URL. You may start out at the temporary URL, but as soon as you click a link pointing to something at http://your_old_domain.com/somepage.html
then you'll be back at your old site.
To test this effectively, you can 'trick' your computer (and your computer alone) into resolving your domain to your new site. You can do this by modifying the hosts file on your machine.
On a Windows machine, this file is located in /windows/system32/driver/etc/hosts
Simply add a line to that contains the IP address of your new host and your domain name:
On Linux, this same file is located in the /etc directory.
I have no idea where it is located on a Mac or even if such a file exists.
This change will 'short circuit' your computer's normal tendency to do a DNS lookup on your domain name which will result in you being pointed to your old site. You should now be able to test your new site just as it will look to everyone else once you change your DNS at your registrar.
Don't forget to take this line out - or comment it out by putting a # in front of it - when you're done testing.