Sorry, I completely messed up above. As I documented it myself, just undefining a DB_Dialogs() entry does not remove the dialog assignment. You have to use ProcRemoveAllDialogEntriesForSpeaker instead.