After many unsuccessful attempts and a new sim from BT. I have finally got my S9+ (running BTU) working with 4G calling (worked with Wi-Fi calling using the EE APN), I first tried flashing the EE EVR firmware which slowed performance and tripped Knox (so no Samsung Pay, banking apps, Samsung Pass or Samsung Health).
I then installed XEU which worked and ran with that for 2 ish weeks but got no 4G calling and the CSC code was still BTU.
I then tried last night again flashing a newer EE EVR firmware which succeeded but then got stuck in a boot loop. So I entered recovery mode and cleared data/ wipe and it rebooted running BTU (original firmware out of the factory). Setup the phone thinking for gods sake and there it was, Wi-Fi calling and VoLTE were working.
I tested VoLTE this morning while in work, it's brilliant as I was trying to find address so talking to a colleague and googling at the same time.
Not sure why it wouldn't work properly in the first instance as I have tried ID Mobile sim before and it worked as soon as I put the sim in.
Definitely a happy ending. I was rather annoyed thay I had a factory unlocked S9+ on pre-order but couldn't use it with the features that BT support on a phone officially supported. Oh well, it's working now.
I just updated my factory unlocked galaxy s9 plus to a new update that came up this evening and lo and behold I have VoLTE enabled on S9 PLUS. The update is about 300 megabytes in size. For all those who have the factory unlocked s9 plus, try updating your phone and you should have VoLTE enabled.