I'm guessing that the new partition on the new hard drive is not marked as active, but the old partition on the old hard drive is.

So, the system will always boot from the active partition which in this case is on the old drive and thus that's why it shows as C:

See from about half way down this for more information on how drives are assigned letters and where the system boots from.

If your using NTFS, I'm not sure if you can use fdisk to make the partition on your new HD active.