The code looks correct. The email address should be set from the database, so if it is correct there, then I don't see why it would be updated. I don't know what might have caused this. Are you sure there isn't a database record with the wrong email address?
I'd maybe contact the hosting provider and see if the email server might be doing something outside of your code. I'd really scrutinize the database as well. Maybe copy the code to another page and try sending it with a hard coded TO address and see if you get the same result.