Isso é esperado, de acordo com man gitignore :
Git doesn’t list excluded directories for performance reasons, so any patterns on contained files have no effect, no matter where they are defined.
git status --untracked=all
está muito perto de resolver seu problema, mas ainda não mostra arquivos não acompanhados em subdiretórios. Este parece um bug na verdade.