Hi Gareth,
In our Diagram component, we have maintaining two layers one is SVG layer(preserves non-html content elements) and another one is HTML layer(preserves html content element). The HTML layer takes place above the SVG layer so all the HTML content elements will be positioned on top of the non-HTML element. It's the behavior of the diagram component. So, we are suggesting you to use either all the nodes as HTML nodes or all the nodes as SVG nodes to overcome this issue
Regards,
Gowtham