'Create Linked Drupal User Account' problem - bug or user error?
This could be caused that in CiviCRM an e-mail address is its own entity and created after the contact has been created. 

Meaning that at the point the trigger contact created is fired there is no e-mail address in the database (yet). That one is added afterwards.

CiviCRM has functionality which is called profiles and which also create a user account. So maybe you can use a profile to create the contact and its related user account.