Vyhrabali jste se, podle některých dalších komentářů - jak říkáte, pokud prvek neexistuje, funguje, ale pokud je null - nefunguje. Zřejmě je to záměrné.
Jedním z návrhů bylo přidat BsonIgnoreIfNull a> atribut do polí, což bude znamenat, že vaše AddToSet bude fungovat.