The server issues a warning, not an error saying the password is expired and will not allow any command until the password is changed. SquirrelSQL should then prompt the user for password change and issue the proper sp_password statement, then proceed as usual. Instead, it takes it as a login failure.
"The password has expired, but you are still allowed to log in. You must change your password before you can continue. If a login trigger is set, it will not be executed."