Last week, Hershel Robinson, created a Drupal module for my client (called CiviCopyAddr) to handle the copying of the primary address into the Billing Address fields via a toggled checkbox. It's located at https://github.com/hershelsr/civicopyaddr . We use Authorize.net as the payment processor. To make it work:
1. Copy the files from the github into a directory call CiviCopyAddr and copy that directory into sites/all/modules and enable the module in Drupal.