Hi Christian,
Thanks for the prompt support as always!
Yeah, that's what I ended up doing was have people fill in the registration form through Gravity Forms, then create the confirmation text instruct them on how to complete the purchase. I then used the member level shortcode filter to show the custom Paypal button on the Welcome page ("My Profile" page) if the user is a free subscriber.
You're definitely right about the ideal situation and the pro-form and Express Checkout sounds like it would do the trick. Taking out the extra steps would certainly make a more fluid experience. Does the s2Member pro come with any Gravity form integration? Because I think that would be a real selling point for the upgrade, particularly given how widespread Gravity Forms is.
Also, as an aside, I was running into major problems with the Paypal button, both shortcode and manual code where I was getting an error from paypal (something about fields not being given proper values). Looked it up on your forums and it looks like it's caused by wordpress/theme/plugin content filters. Unfortunately, I couldn't change the theme or plugins, and turning off the wpautop filter didn't help either. Ended up having to put the button code in manually through the template files after the content was output and then use jquery to put the button into empty divs placed in the content after the page was loaded. Not a problem any more but just thought I'd bring it to your attention since I saw a couple threads about the problem as I was searching for a solution myself.
Thanks again!