Ok so I finally got this working! In the end I had to resort to rendering VTK inside an offscreen FBO and piping its texture into an egui Image. I actually managed to get VTK drawing without that, but it refused to draw in the correct place for some reason. It drew with the correct size at least though. Anyway, this is probably a nicer approach anyway as it saves VTK from having to redraw for every frame.
Now the last remaining challenge is to get mouse events forwarding…