DOMContentLoaded と scripts ブラウザが最初にHTMLをロードし、テキスト中の <script>...</script> に出くわすと、DOM の構築を続けることができません。すぐにスクリプトを実行する必要があります。そのため、このようなスクリプトがすべて実行された後にのみ DOMContentLoaded は発生する可能性があります。