Karoline, é um errinho quase que imperceptível e fique tranquila, pois eles acontecem. Observe esta linha:
for( var posicao = 0; posicao < ingredientes.length; posicao++);
Note que há um ponto e vírgula no final da instrução acima. Porém, o correto é a abertura de chaves. Por exemplo:
for( var posicao = 0; posicao < ingredientes.length; posicao++){
codigo omitido...
}
E como efeito colateral deste ponto e vírgula, está ocorrendo a permissão da duplicação de ingredientes. Portanto, para corrigir o código, basta retirar este ponto e vírgula.
Acredito que isto resolverá o seu problema.
Qualquer dúvida estou a disposição. Espero ter ajudado. Abraços e bons estudos!