Because, if difficulty grows, you re-include some shares at the end of the last difficulty back into your last N shares. This might be exploitable(?).
I think it was already mentioned, in short rounds, PPLNS may reward miners multiple times for the same share. So if you stick with the pool throughout, the chances of that increases, hence encouraging people sticking around even on a long round since the next one might be a short one and you get paid again for those shares in the long round.
I am aware of that.
However, consider the following example:
Difficulty = 10, new difficulty = 40 (max. increase)
Suddenly 3*old_difficulty-1 shares are able to get paid again once the difficulty changes. If the first share in the new difficulty solves the block, 1 share of diff40 + 39 shares of diff10 get paid. This is the reason why lower global difficulty shares need to be valued lower (by scoring with the difficulty they were mined with) than the new ones (or shares submitted at the very end of a difficulty round get more valuable) as they already had their fair chance of being paid.
If N would be a constant 10, it would always be the last 10 shares who get paid, but then as difficulty increases it gets less and less likely that you get paid for a share - if you get paid though, you get paid more --> variance increases.
If N changes with the difficulty, you include some shares multiple times once difficulty (and N) increases, so you need to either weigh them or maybe(?) let N grow with shares submitted, not at once (the first share @diff40 increases N to 11, the next share to N=12 etc. until N=40 is reached).
I guess I just need to write a small program that simulates a pool + some miners and then plots the payments, might be faster than me doing the full maths.