Hey there, Dan
Please can you ask your wife to sign into her Microsoft account profile page here: https://account.microsoft.com/profile
Under profile info, please can you check that your wife is in the same region as you. If the region is different, please update the region by clicking onto "Edit profile info" on the top-right of the profile info card.
Unfortunately, the Microsoft doesn't update this automatically using your geo location. This has to be done manually. So if you have moved from region to region, or this has been changed manually at some point, then it would stay until it has been changed again.
If the region is different, you can change your son's region to match your wife's region through his profile settings. Once he has done this, he will be able to redeem the code. He will then be able to then change his region again back to the country he is located in.
Alternatively, you can refund the purchase, then re-purchase the game again either using the same account or when your wife's region has been updated. If you wish to proceed with this, I can walk you through submitting a refund request.
Hope this helps,
Nathan