Yeah.
TileEdit. Its what we have to use to create new tile improvements too (ala the CityX mod), and I made a Martian terrain set with it. It is pretty tricky though, because the borders all interact quite complexly, and you need to alter loads of files for each terrain you alter.
I don't think, however, that any terrains you add beyond the existing ones will show up on random maps unless you SLIC it. Or you could replace existing terrains, and they'd show up.