It's returning 0 because PWDCOMPARE is hashing the clear text password you're passing in with an algorithm that is not SHA2_512.
You can see this yourself by doing this:
DECLARE @Original nvarchar(128) = '1';
DECLARE @Hashed varbinary(128) = HASHBYTES('SHA2_512', '1');
SELECT PWDENCRYPT(@Original) AS 'PWDENCRYPT Hash';
SELECT @Hashed AS 'SHA2_512 Hash';
SELECT PWDCOMPARE(@Original, @Hashed);
You should only use PWDCOMPARE with a column that was encrypted with PWDENCRYPT.
You should NOT being PWDENCRYPT anymore. Use HASHBYTES instead and compare against the column value yourself.