"Is there a compelling reason why I should use an int datatype for the primary key instead?"
The fact that auto_increment only works on integers should be more than enough.
A note: the primary key is a means of indentifying data internalling inside the database. Hence, strings are completely useless there.
Use integers, you'll love yourself later.