Hi Tom - looks wrong to me - thanks. Different in V6/WIP - more correct in that it seems only to want to return points and curve fragments- probably the correct intersection.
In any case, use the edge curve to trim - either use DupEdge or use the 'crv' filter when choosing the trimming objects to force selection of curves only (click on the edge)
I think the odd trim results from the green curve are due to the curve not being right on the surface and pulling it makes a bit of a mess.If you pull that curve to the surface and clean up to get that actual closed curve that you want,
Trim gets it right in one click. Turning the cylinder so the seam away also helps of course,...
I'll check V6/WIP & see if we can do anything to tune this up.