Das wird's sein. newY ist dann mit "Irgendwas" gefüllt, und dieses "Irgendwas" kann durchaus ein für Extended ungültiges Bitmuster sein, woraufhin sich FloatToStr() verschluckt.
Edit:
"//hier kommt keine Division vor; ist eine einfache lineare Interpolation" - Wie kann man divisionsfrei lerpen?
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)