Extend surface from intersection

How do I extend the selected surface to the extents of the already extended green curve? I can’t seem to be able to sweep this extended curve by using the edges of the red surface as guiderails. The result self-intersects or continues on the wrong side.

It’s not hard to implement Rhinocommon Surface.Extend method in a script component.

ExtendSurface.gh (80.5 KB)
I’m not sure why there isn’t any component neither in grasshopper nor any plugin (as far as I know) for surface extensions.

Thanks guys, now I can continue with my design!

I also stumbled upon Wombat a few hours later and it has an extend surface component as well.

E: It’s weird that this is not availabe out of the box.

E2: Parakeet has an extend surface component as well, this one works based on edge indices.