How do I Blit a Procedural Mesh To a Render Target?

I have a simple Material that colours a Procedural Mesh via its Vertex Colours (set during generation). However when I try to use DrawMaterialToRenderTarget, it doesn’t work.

Code example:

UKismetRenderingLibrary::DrawMaterialToRenderTarget(GetWorld(), MyRenderTex, MyMaterial);

The Render Texture seems to work if I use a SceneCaptureComponent2D but for my purposes it would be cleaner if I was able to use a pure C++ solution where given a mesh and its material I can create a texture of it.

Is this some aspect I am missing? I’ve spent hours googling but couldn’t find anything obvious.