Alright... As you insert your default option to the index 0 you can just do the following:
if(!d.Items[0].Text.equals("--- Please Select ---"))
d.Items.Insert("--- Please Select ---");
and else do nothing. or as @Plue mentioned:
if(!Page.IsPostBack)
d.Items.Insert(0, new ListItem("--- Please Select ---", String.Empty));
Additionaly you should probably move "--- Please Select ---"
to a constant.
private const string DEFAULTOPTION = "--- Please Select ---";