If you post some kind of plan here, then people can probably give you better comments.
I would assume that you could accomplish this without hackign the core of CB by
1) implementing a joomla component which creates the registration forms (calling CB funtions)
2) making a plugin which controls which tabs/fields are displayed and which prevents editing fields which do not belong to the specific type of profile
Alternatively, I would encourage you to contact the core team and discuss whether your enhancements can be later integrated in to the mainline CB.
If you make a hack this big, and publish it, you are likely to become an administrator of another CB fork. (see what happened to CBE fork after cb 1.0 was published to get an idea of teh downsides of forking)
mikko