/////////////////////////////// If at the top level
if (!$inside)
{
$itm .= ((!$selfAsLink && ($child['id'] == $modx->documentIdentifier)) || ($itsEmpty && $useCategoryFolders)) ?
$pre.$child[$textOfLinks].$post . (($debugMode) ? ' self|cat' : '') : '<a href="[~'.$child['id'].'~]" title="'.$child[$titleOfLinks].'">'.$pre.$child[$textOfLinks].$post.'</a>';
$itm .= ($debugMode) ? ' top' : '';
}
/////////////////////////////// it's a folder and it's below the top level
elseif ($isFolder && $inside)
{
$itm .= ((!$selfAsLink && ($child['id'] == $modx->documentIdentifier)) || ($itsEmpty && $useCategoryFolders)) ?
$pre.$child[$textOfLinks].$post . (($debugMode) ? 'subfolder T': '') : '<a href="[~'.$child['id'].'~]" title="'.$child[$titleOfLinks].'">'.$pre.$child[$textOfLinks].$post.'</a>'. (($debugMode) ? ' subfolder F' :'');
}
/////////////////////////////// it's a document inside a folder
else
{
$itm .= ($child['alias'] > '0' && !$selfAsLink && ($child['id'] == $modx->documentIdentifier)) ? $child[$textOfLinks] : '<a href="[~'.$child['id'].'~]" title="'.$child[$titleOfLinks].'">'.$child[$textOfLinks].'</a>';
$itm .= ($debugMode) ? ' doc' : '';
}

The way the self as link should function in my mind is to turn off only for the page you’re on.
Was it not doing that properly?
Out of curiosity, which version of DropMenu are ou using? (from which MODx version)