Forse notifica a Mongooose che il set di dati è cambiato in questo modo:
doc.markModified('pathToYourAttribute')
Dai documenti http://mongoosejs.com/docs/schematypes.html
person.anything = { x: [3, 4, { y: "changed" }] };
person.markModified('anything');
Spero che ti aiuti!