First install the version of windows you have for cloning on new drive.
then open both drives in macrium reflect free. select the old partition in macrium. click restore. now select the new drive. now you delete the new partition of windows you just created on new drive. drag down the old partition of windows into its space. now click next
after its finished with the clone youll need to open diskpart and recreate the uefi partitions
diskpart
list disk
select disk # <- replace # with the actual number for the disk you are going to clone to
clean
convert gpt
select part 1
delete part override
create part EFI size=100
format fs=fat32 quick
assign letter=s
create part MSR size=16
exit
exit
Then clone your Windows 10 (C: drive) partition only to the remaining unallocated space. Give it a drive letter - let's assume drive letter T:. Then the final command will be:
bcdboot T:\Windows /s S: /f UEFI
Note: on some disks, convert gpt will create an MSR partition. So I include the commands to delete the partition if it is created after convert gpt. If the MSR partition is not created by the convert gpt command, those two commands will just fail, but no harm will be done.

after its finished with the clone youll need to open diskpart and recreate the uefi partitions
diskpart
list disk
select disk # <- replace # with the actual number for the disk you are going to clone to
clean
convert gpt
select part 1
delete part override
create part EFI size=100
format fs=fat32 quick
assign letter=s
create part MSR size=16
exit
exit
Then clone your Windows 10 (C: drive) partition only to the remaining unallocated space. Give it a drive letter - let's assume drive letter T:. Then the final command will be:
bcdboot T:\Windows /s S: /f UEFI
Note: on some disks, convert gpt will create an MSR partition. So I include the commands to delete the partition if it is created after convert gpt. If the MSR partition is not created by the convert gpt command, those two commands will just fail, but no harm will be done.