Rule to create a Linked Drupal user account for a specific CiviCRM Contact Subtype
I'm assuming you are also using the CiviCRM Entity module?

For it to work on membership create, you need to load the contact entity from the membership->contact_id property. 

Use the "Fetch entity by id" action.

Because of this, you may need the Rules Conditional module, which let's you put conditionals in the "actions" portion of the Rule.

There you can add an "If" conditional action, and the "CiviCRM Contact is of subtype" condition provided by CiviCRM Entity should work for you there.