Re: Is BuddyPress good for this?
You could look into modifying an existing WordPress plugin, I think called “a member” that will help you with your pay for subscription situation.
BuddyPress certainly could have “private” blogs, you would just need to restrict user access to each others blogs by checking the available author ID’s against the current blog ID, and if they aren’t an author, bounce them back somewhere.
Sounds like BuddyPress will be a very good starting point for you, you will just need to mold it to fit your needs.