Here is an extract from Awesome's dd thread:
If you dd a smaller partition to a larger one the larger one will now be formatted the same as the smaller one and there won't be any space left on the drive. The way around this is to build a partition image file.
dd if=smaller_partition of=/home/sam/smaller_partition.img
Mount the image like a drive using:
mount -o loop /home/sam/smaller_partition.img /mnt/directory
cp -r * /mnt/larger_partition_already_partitioned_and_formatted_to_the_size_you_want
I actually just tried mounting a 10GB hard drive image of an ntfs file system which is also stored in an ntfs file system and I'm using ntfs-3g, I could not mount the image using this example, kept getting un-known file system type errors or similar. So I came cruising these forums while waiting for a new image of that drive to complete using a different syntax in my dd command.
EDIT: It kept telling me I had to specify the file system type, so I did, and still got errors.