This is an ugly manual example tho. How do I get intersections with vertices that follows the shape 100%.
There's an addon called TinyCAD, which I think is implemented in Blender by default, so you just have to activate it in the Preferences.
Once activated, select all your vertices in Edit mode, then right click > TinyCAD > XALL Intersect Selected Edges. It will create a common vertex everywhere the edges are crossing. Then you just need to remove the doubles with AltM > Merge By Distance, and remove all the inner vertices.