In moving from one server to another (with a MySQL MT backend on both machines), one of the problems I ran across was that crypt used MD5 on the old machine and Blowfish on the new machine. Even with a default mt-load, things weren't working. It turns out all the database schemas have varchar(40) for the password length, and Blowfish passwords can be quite a bit bigger.
"Nelson" encrypts to $2a$04$q....EC.../6....Pu....BWCytFBLNDBJ8Evwjn9dp5rWX5PASBq, while all the database records (with defaults) is $2a$04$q....EC.../6....Pu....BWCytFBLNDB.
I'd suggest upping the varchar size in the schema. 60 should do for Blowfish passwords.