Извиквате метод Pull(string name, MongoDB.Bson.BsonValue value) и според документите това
и предоставяте { "Identifier", productId } като стойността. Предполагам, че mongo не намира точно стойност.
Опитайте да използвате второто претоварване на Pull с условие за заявка вместо точна стойност
var update = Update.Pull("Products", Query.EQ("Identifier", productId));
АКТУАЛИЗАЦИЯ
Тъй като споменахте Category обект, така че мога да предложа да използвате ламбда вместоQuery.EQ :
var pull = Update<Category>.Pull(x => x.Products, builder =>
builder.Where(q => q.Identifier == productId));