Applying globally scaled to the root had no effect, but setting the IK bones themselves to globally scaled did produce some results but it caused the IK bone to match the source instead of the target (my mesh). Since my foot was a little bit smaller than the source, it produced a miss-match in the translation. Either that or the foot IK of the retargeter was the culprit. Either way, the better solution appears to be using virtual bones.
Though the virtual bones had their own issue which I do not understand. I had created virtual bones pre-emptively and then retargeted the animations. For whatever reason, these virtual bones did not move with the skeleton, they just kept their initial positions. I then deleted the virtual bones and re-created them exactly as they were before (naming was the same as well). These bones moved with the skeleton. It’s working now, so I guess that’s all that matters