I thought I'd post a video now to show where exactly I'm at with the results as a video in a lot of cases can be better than a bunch of screenshots in showing some behaviour that I'm not all that happy with. The intersection is working, I think in order to fix the pixelation problem in the centre which I swear looks like z-fighting to me I need to turn z-write off for the shader itself. I just don't know what the syntax is for that.
The biggest problem at the moment though that I have with the viewport's behaviour is the rings are not staying put. Now, I think I know why this is and it's because they're a child of the viewport which is following the camera. As a result this is causing the influence rings to move around in an almost billboard like effect.
I suppose the question I have is how do I keep the rings static? Once I do that I'll have them working exactly as I want and can then work on dealing with the vertices. I suppose I could override the child behaviour somehow? That might work, should I set as top level in the ready function? Or would that be too much of a hacky work around? In other games like Stellaris and Civilization VI they can keep the borders completely still without any movement so it must be possible.