Change the following part of the code in your program
long amount = dfSnoozeTime.getDate().getTime() - (currentTime.getTime()+25200000);
tmSnooze.schedule(ttSnooze,amount);
fmMain.removeCommand(cmSnooze);
fmMain.removeCommand(cmReset);
fmMain.delete(dateIndex);
with this one
long amount = dfSnoozeTime.getDate().getTime() - (currentTime.getTime()+2520000);
tmSnooze.schedule(ttSnooze,amount);
fmMain.removeCommand(cmSnooze);
fmMain.removeCommand(cmReset);
try{
fmMain.delete(dateIndex);
}catch(Exception ee){}
Hope it will not give any error. If yes then check the value of dateIndex parameter
Rishi