Você não está executando NewFile.sh , você está executando o comando sh , provavelmente /bin/sh passando NewFile.sh como argumento.
sh acontece para ler o que está neste arquivo e executá-lo. Ele não verifica a permissão de execução por design, supondo que você saiba o que está fazendo.