I dont think that this is possible, since when it would discard itself, the durable keyword replace the discard effect and then you draw the chaos dwarf again. And i believe that it is not possible reffering to the cards code:
$storage = array();
for ($i = 1; $i <= 8; $i++)
if (($i != $cardpos) AND ($carddb->GetCard($mydata->Hand[$i])->Class == 'Common'))
$storage[] = $i;
if (count($storage) > 0)
{
$dis_index = $storage[array_rand($storage)];
if ($carddb->GetCard($mydata->Hand[$dis_index])->HasKeyword("Alliance"))
{
$bricks_production*= 2;
$gems_production*= 2;
$recruits_production*= 2;
}
$mydata->Hand[$dis_index] = $this->DrawCard($my_deck, $mydata->Hand, $cardpos, 'DrawCard_random');
$mydata->NewCards[$dis_index] = 1;
}
I think the condition is:
($i != $cardpos)(I'm not quite sure if it is right, please correct me when i'm false)