The main difference between the NI algorithm and most others is that it removes outliers. It calculates a "best fit" using the mean squared difference method and applies a score. If iterations is set to 0, it is finished and returns the line (as in your first image). If iterations are greater than "0" it removes an outlier and then re-calculates the MSD and re-calculates the score to see if the there is an improvement. It keeps iterating until it either reaches a certain score or until it reaches the iteration number
So in your second case, if you set the iterations to >0, the final point will be eliminated and it will decide that the first two are the "best fit". You need to have more data points to use this function effectively - the more, the better.