L'operatore posizionale supporta solo un livello di profondità e solo il primo elemento corrispondente.
C'è un JIRA rintracciabile per il tipo di comportamento che desideri qui:https://jira.mongodb.org/browse/SERVER-831
Non sono sicuro che consentirà più di una corrispondenza, ma credo che lo farà a causa della dinamica di come dovrà funzionare.