I think we’re saying much the same thing. My curves look a lot like the one you showed with the notable exception that my asymptotes are quite a bit steeper and more balanced. I have also notices that going further out of focus makes the slope of the two fitted lines much more similar. With 9 points, I find that I typically get 3 points in a nearly straight line, three more points near focus (just like your pic) where the line starts to curve and then three more that form the other nearly straight line.
In the case of your graph, the intersection of the lines is slightly to the left of where I would guess the true focus would be. That’s because the right side fitted line has a shallower slope than the left side. If you go further out of focus, the two sides become more symmetrical, leading to a calculated focus value that is closer to the minimum of the curve. It looks like your step size is 5 steps (what focuser are you using? - that seems like a very small number). The plot minimum appears to be around 39091, but the SGP calculated minimum looks like it is somewhere around 39089. That is a difference that is somewhere around half your step size.
That is, if I am understanding how SGP calculates the focus point correctly. My understanding is that it picks the intersection of the two lines as the focus point - unless it doesn’t get a good fit, when it calculates a weighted minimum based on the lowest three values.
Like I said before, if it works well for you, that’s all that matters. For me, though, I have found that the new routine produces a much more symmetrical plot when it is taken substantially out of focus, and for me, I believe that produces more accurate results.