I’m putting a collection of points into a Polygon shape like so:
<Polygon Points="{Binding vertices, Converter={StaticResource pointCollectionConverter}}" Stretch="None" Stroke="Black" StrokeThickness="2" Fill="#7EBB9A" />
However, on relatively complex inputs, the polygon doesn’t come out like I’d expect it to. For example, here is an output:

The problem is that this polygon has two interesections that should not be there. It should have these edges instead(in Red):

I’m not how to fix this, and if not I guess I have to resort to drawing it manually.
This is normal behavior and comes from the ordering in which the points are created. What is the source of your points and can they be reordered? If you were to swap the points indicated in the image below you will get the result you are after.