Huh?
The bigger the hashrate the higher the diff, the shares per second are constant depending on number of connections.
So with a higher hash rate, and thus a higher diff, does the chance of solving a block go down or remain the same?
Sorry, I'm not following how all this works.

Share diff is the equivalent of the server saying "Don't send me any shares that are less than a difficulty of
x". For a given hashrate, if
x were 100 (for example of small easy to talk about numbers) then the amount of times that amount of has "should" return shares would be 10 times per second (for example of small easy to talk about numbers). If you doubled that amount of hash, and kept
x at 100, then you'd return 20 shares per second.
The value of
x fluctuates with hash in order to have a specific number of shares returned per second/minute, otherwise an huge hash increase would dump 300 gajillion shares and pointlessly flood the server.
All shares that are returned for any difficulty lower than an actual block solve are solely for the purpose of the pool giving the users credit for their work (albeit that has no real meaning in a solo pool). To that end, there's no difference between 1 share at 100 or 10 shares at 10, other than the load on the server; so, the per user/hashrate diff is adjusted for that given hashrate and all users return roughly the same number of shares per second/minute.