If it's a for desktop game I use the terrain editor from the game engine Unity3d. You take a screenshot from Google earth, take it into photoshop, make a greyscale image and paint the terrain features, save it as a raw image, import into unity as a heightmap and paint on the textures with a brush. Easy to scale from there as well by changing the width/height. This is an example tutorial http://vimeo.com/album/150503
If it's for a device with limited processing power I make low poly tileable meshes in blender or 3ds max, then slide them around to make the map I want.
This was my first map I made with Unity, it's just Ultima Online's map I took into photoshop, filled all the colors to solid greyscale (black for water, white for mountains, grey for middle terrain), imported it into the engine and painted on the textures, etc http://www.youtube.com/watch?v=Sy_ycpbEPVY
This is my first heightmap from Ultima Online's map:
greyscale image I made in photoshop, white is the highest point, black is the lowest point.
And in the engine with a few textures, trees and buildings it becomes: