These are the recomended steps that should bring you home safe:
- Create a new master page to be used for your my sites.
- Create a feature that runs a code snippet that directes SharePoint to use your new MySite master page instead of default.master
- Add a feature stapler feature which will run your my site master page feature when a new My Site has been created. Not only does this feature set the new master pages, but also other properties needed to control the behavior and logic in the custom web control (see step 4)
- Add your own custom server control to your my site master pages. This control will be responsible for adding and changing web parts to your my site (the private view)
- The public view of my site may be changed in SharePoint designer. Open the page http://mysitehost/person.aspx?yourdomain\username
And when I had done a lot of work I found this great release of a My Site Create customization solution on CodePlex. You will find it here. Written by Steve Peschka with others.
I'm currently adding new customization elements, such as:
- adding and removing navigation elementes
- adding and removing lists
- adding list items to lists
It will grow with time as the requirements for customization changes.