I am guessing, but I think that the printer expects UTF-8 encoding, and Lazarus GTK 1 interface outputs ISO encoding. You can try to fix this by changing this line:
Drucker.Canvas.TextOut(25, 25 + Line * H, memo.Lines[Line]);
to:
Drucker.Canvas.TextOut(25, 25 + Line * H, AnsiToUTF8(memo.Lines[Line]));
or something similar