Porque
$newDate é um objeto do tipo DateTime , não uma string. A documentação
é explícito:
Retorna novoDateTimeobjeto formatado de acordo com o formato especificado.
Se você deseja converter de uma string para
DateTime volte para string para alterar o formato, chame DateTime::format
no final para obter uma string formatada do seu DateTime . $newDate = DateTime::createFromFormat("l dS F Y", $dateFromDB);
$newDate = $newDate->format('d/m/Y'); // for example