Однако есть нюанс.
DialogFragment is lifecycle-aware, а AlertDialog - нет.
То есть, если показан AlertDialog, а его активити или фрагмент закрывается, то будет крэш.
Это можно обойти, завернув AlertDialog в lifecycle-aware код, который закрывает диалог на onDestroy родителя. Я себе так сделал, теперь ем и нахваливаю 😜