default修飾子は以下の実装になってるから、修正するか新しい修飾子作っちゃえばいいんじゃないかな。

function smarty_modifier_default($string, $default = '')
{
if (!isset($string) || $string === '')
return $default;
else
return $string;
}