Ok, I’ve managed to solve this problem.
I didn’t realise that I had to make use of the world direction. I use the world direction multiplied by the length of my camera boom, and add this to the world location. This nullifies the offset I was experiencing, and now the mouse cursor behaves how I expect, yay!!
Hopefully this will help anyone else who shares the same confusion I did.