Rogue Helical Sweep Cut

I have a helical cut that is supposed to end at a shoulder as shown in the first picture, however, if I make the helix length the same as the height of the cylinder, the cut extrapolates past the helix curve and looks like the second picture.  Interestingly enough, it does not cut into the shoulder.  I can fix it by backing the thread length off 0.0001", but I'd like to know how to make this work at the full thread length.  Thanks.

Desired Cut

Actual Cut

SolidworksParts And Features