So following the steps outlined by albertgi in the Comments of this thread I was able to change the PEAR.php script. With that, combined with trial and error, I was able to get the authentication working. The other things I tried:
Make sure the suffix for the Admin user matches the Base DN of the LDAP Bind settings in the LDAP tab
Base DN: DC=corp,DC=domain,DC=com
Admin User: admin at corp.domain.com
Use this even if your users login with username at my-domain.com. The Base DN and user login suffix can be different, as long as the Base DN is pointing to where your user information is kept in AD.
For the Host under LDAP Bind Settings, I changed it to our domain controller. I had been pointing it to the Read-Only DC when it was not working. Not sure if this matters but could be worth a shot. I also left the Port blank and allowed it to use the default
Lastly I left Use an external LDAP server for groups unchecked. Some tutorials say check it others say uncheck.