It looks like in your definition you’re anchoring the points around the outside of the curve instead of keeping them on the curve and free to slide, making it impossible for the area goal to be met without overlaps.
If you let them slide that might fix it already, but you might find you also want to add this to ensure the ordering stays consistent