Thank you for your advice. I have managed to implement this using the approach suggested, and it all seems to work bar one small issue.
When the canvas is first rendered, the plane is visible, but the image does not appear until I interact with the canvas (i.e click, or mousewheel etc.) Once it has appeared, if the canvas is re-rendered, there is no issue and the image is present.
Looking at my below code, is there anything that I am missing that could be causing this? Or is there some additional setup in my renderer required?