Infelizmente eu tive o mesmo problema e acabei fazendo um método de extensão para me ajudar a contornar isso.
public static BsonArray ToBsonDocumentArray(this IEnumerable list)
{
var array = new BsonArray();
foreach (var item in list)
{
array.Add(item.ToBson());
}
return array;
}
então você deve ser capaz de fazer:
productCollection.Update(query, Update.Set("store", storeList.ToBsonDocumentArray()));