I’m aware I could just replace the plane mesh with a specialized one, but ideally I would want to define the shape of the hole with a texture mask like this:
I’ve actually discovered that this functionality is built into the stencil mask code already. This project demonstrates how to do it properly, it basically just requires the material to have its opacity map set up in a particular way.