Voláte metodu Pull(string name, MongoDB.Bson.BsonValue value) a podle dokumentů to
a poskytnete { "Identifier", productId } jako hodnotu. Myslím, že to mongo nenajde přesně hodnotu.
Zkuste použít druhé přetížení Pull s podmínkou dotazu namísto přesné hodnoty
var update = Update.Pull("Products", Query.EQ("Identifier", productId));
AKTUALIZACE
Protože jste zmínil Category entity, takže mohu navrhnout použití lambda místo Query.EQ :
var pull = Update<Category>.Pull(x => x.Products, builder =>
builder.Where(q => q.Identifier == productId));