Maybe the problem is not in the hashing itselft, maybe it's the way you store the password in the database and retrieve it afterwords or something like that.
First step I would take is to write a unit test to check the functionality of that class
[TestClass]
public class BCryptHasherTest
{
[TestMethod]
public void check_hashing_works_for_valid_password()
{
string password = "myDummyPassword!";
string hashedPassword = BCryptHasher.EncryptPassword(password);
var passwordsMatch = BCryptHasher.CheckPasswordMatch(password, hashedPassword);
Assert.IsTrue(passwordsMatch);
}
}
If this passes, the problem is somewhere else in your code, so you can go ahead and test for other things until you have found the issue.