Hi,
$schedule = array();
while($row=$db->fetchRow())
{
if(!in_array($row['ndate'], $schedule))
{
$schedule[$row['ndate']]= array();
in_array sucht im Array nach einem Element mit bestimmtem Wert.
Das Datum ist bei dir aber kein Wert, sondern Schluessel.
Also verwende entweder array_key_exists(), oder ueberpruefe gleich mit isset(), ob $schedule[$row['ndate']] bereits existiert.
MfG ChrisB