Given some other similar bugs in other drawing operations, I think a better approach may be to optimize the conversion from GpRegion to HRGN to only convert the parts within a known bounding rectangle. We could then use SOFTWARE_GdipFillPath which would benefit from that. Unfortunately, that requires rewriting the conversion so it doesn't rely on gdi32.