Ok, acontece que o script de fato é executado antes de todo o resto. Parece que houve um erro no próprio script que significa que ele não foi executado corretamente e é por esse motivo que ele não configurou a instância corretamente.
Descobri isso observando a saída de /var/log/eb-activity.log
Então, acho que sempre confira a saída dos seus scripts com cuidado! Não faria mal adicionar set -e
na parte superior do script, de forma que ele interrompesse a execução quando ocorresse um erro.