Most of the advice here is solid, but the part that trips people up is not the plugin, it is what happens after the files land on the new host. I have seen a migration look finished because the homepage loaded, and then half the images were still pointing at the old domain, or a contact form quietly stopped sending. So before you touch DNS, do the boring check on the staging copy: log in, click through a few inner pages, submit a form, and check that the permalinks and the media library actually open.
One thing I would add to what WickednDivine and others said about lowering the TTL: do it a full day before you plan to switch, not an hour before. That alone has saved me a lot of waiting around. And keep the old host live for a couple of days after the switch, just in case a visitor or a search crawler still hits the old IP. If the OP is still around, it would be interesting to hear which route you took, because dvc asked a fair question and a lot of people reading this later will run into the same choice between Duplicator, Migrate Guru, and doing it by hand.