Hello,
Why don't you try MembershipContext.AuthenticatedUser than the MembershipContext.CurrentUserProfile ?
MembershipContext.CurrentUserProfile is available only when the request contains parameters "userid", "username" or "userguid" with valid value of the user.