Prova a mettere un un valore assoluto per il controllo is_dir e non relativo:
is_dir($path.'/'.$file);

Perché altrimenti controlla se $file è una directory rispetto alla posizione del file che esegue le script e non rispetto a $path ...