TImage oder TPicture.LoadFromFile benutzt halt die Datei-Extension um intern die richtige Graphic-Klasse (TBitmap, TPngImage, TJPegImage etc.) zu ermitteln, davon eine Instanz zu erzeugen, deren LoadFromFile-Methode aufzurufen und die Instanz an Image.Picture.Graphic zuzuweisen.
Das fällt einem dann auf die Füße, wenn mal wieder PNG Dateien mit der Erweiterung JPG gespeichert wurden. Keine Ahnung, wer das wo verbricht, aber diese Dateien begegnen mir in meinem Umfeld (Marketing Material) oft genug, so dass ich jedes Mal vor dem Laden teste.
P.S.: Wenn man diese Dateien mit IrfanView öffnet, bietet einem das Programm an, die falsche Erweiterung umzubenennen.