certain games just have good matchmaking, Halo comes to mind, and some have terrible matchmaking, looking at you Gears2. It is dependent on the game if it searches your locale first for games AFAIK. Gears 3 Beta finds local games when I search.
Battlefield 2 is server based, thus you'll never have problems finding games, well except if the servers go down
MW2 is P2P and therefore you'll struggle to find games. I suggest the following: Make sure your NAT is open and search for games with a full lobby or at least two other friends. This usually helps. Since the first map pack was released for Black Ops I can't find matches alone, except Wager matches. I have to join friends in a lobby to be able to join international games.