I've been working on a project to get me familiar with Ogre3d, which is an open source free graphics engine that runs on all major platforms. Anyways, the project is an island generator that uses random noise, and some math to make random island shapes. Here's one
I googled for ideas and related tutorial/articles and came up with this one about perturbing existing 2d images, on a site created by the guy who wrote this useful forum post.