I think the only way to do this properly and having the edges rendered cleanly is to generate the vertices / triangles of the holed-plane yourself.
I have done a bit of the work for you:
However, the edge renderer builds the lines of the edges at construction time (in the constructor). So, whenever the geometry changes, the edge renderer must be disposed / re-enabled to have it regenerate the edges. I have done it in the PG, but be aware it can take some time, depending of the number of planes with holes you have.
The split I have done to create the vertices on the border can be improved when the hole is not in the center of the plane. Currently, you get:
The vertices on the border could be dispatched better to avoid having triangles too thin, which can lead to some artifacts with the edge renderer
You will have to perform some deeper changes if you want multiple holes in a plane, and I don’t think it is very easy, basically it’s CSG done by hand, even if the shapes are simple and known in advance - one plane and several circles.
Last thing, in the PG you should give a multiple of 4 for
numCirclePoints, else you won’t get sharp corners for the plane: