It's just one of those things - there are no reasons for it at all.
Surrey have been very strong for any number of years and there is no doubt that many of their players have deserved England recognition.
But..... I'll try and make some sense of the business :
Historically, England team selection has revolved around the 'test counties' with the southern pair (Middlesex and Surrey) holding sway in the last decade, although England's seam attack is more and more Yorkshire-based this season. It's just a bit of 'capital city' bias, possibly. I think that if they could stage a test match at Chelmsford or Romford they would just to bring Essex into the 'club'.
Some Londoners think that Oxford is in the north because it is more than 30 miles from the capital. As for Derbyshire, Notts, Leicestershire, Northants etc, well, they are perceived as being close to the arctic circle.
Civilisation tends to start again when you reach Lancashire and Yorkshire, but peters out just the south side of the Durham border.
I'm possibly being totally unfair, because several of the 'outside London' southern counties are also visibly hard done to with respect to test players.
The bias is in all likelihood just down to media reporting. Most of the London-based hacks I have come across get a nosebleed when they travel more than 5 miles from the Groucho Club, so it's really a publicity thing - free PR.
One example - a couple of weeks ago, Derbyshire gave Middlesex a good seeing-to. The next day, the newspaper I read (published in London) was more full of praise for Phil Tufnell's heroics in holding out for an hour and a half in a last wicket partnership than anything else. It could have hardly been more biased if they had spent the whole 6 column inches on Tuffers and then just put a footnote in "Oh, yes, Derbyshire won by 250 runs due to some filthy slogging and the odd jammy wicket" or something.
It's also possible that us from 'oop north' are just a bunch of bitter, twisted oiks (well, I am anyway). 8D