I had this problem recently with an iPhone 6, I purchased it second hand from a private seller locked to vodafone, to get it unlocked it had to be used on Vodafone’s network for 30 days. During this 30 days iMessage and FacTime worked without a problem activated straight away etc.
After the 30 days were up I started using my existing VM SIM in the phone, but could not get either iMessage of FaceTime to activate. I tried everything suggested by both Apple and Virgin through the chat support. I finally gave up and excepted I wouldn’t be able to use either app. During trying the time to sort this all out I put the Vodafone SIM back in and it activated both apps immediately so suspected to problem with Virgin, but they never did come up with a solution.
The goods news is after leaving it for a few weeks, I tried to activate both again by switching the apps back on and they miraculously activated and are still working fine now two weeks later after 4 weeks of trying everything going with no success.
my suspicion is the problem lies firmly with Virgin, I’m not sure what the problem is but luckily for me it is currently resolved.