bp_core_screen_signup() does several other things besides creating the user and saving xprofile fields…it does validation, optionally creates a user blog, provides several action hooks, etc. Are you saying it’s just not practical to use it?
But I also need to save some xprofile fields programmatically, too. Won’t I eventually have to run bp_core_screen_signup() in order to “fully create” a BP member profile?