Or, instead of going via a compressed image of the current system, you could do a direct disk to disk clone. That's a simpler process, and there's less to go wrong, and you don't need an extra external disk to hold the image file.
Connect the new HD as well as the old one. There are many programs which will copy everything from the old disk to the new one, such as the free Seagate DiskWizard (which only runs if you have at least one Seagate or Maxtor brand of HD connected) or Acronis TrueImage or any good partition manager such as Paragon Partition Manager or Acronis Disk Director (not Partition Magic which is incompatible with Vista).
If the new disk is bigger than the old one, you could either resize one or more of the copied partitions larger, or use the extra space for an extra partition for storing data files. Some of the programs listed above let you optionally resize a partition larger during the copying process. Otherwise you can do it afterwards.
Then you can remove the old HD (keep it unchanged until you are sure the new one is working well) and the new one should boot OK.
There is a small possibility the new one won't boot (whether you go via an image or do a direct clone). If so you can run a boot repair using the Vista DVD.