Estas haciendo lío...
Supongo que txObservaciones es un TMemo o similar, tu estas creando un nuevo TStringList que se lo asignas a la variable Observaciones, inmediatamente luego de esto pierdes la referencia a este TStringList porque a la variable Observaciones le asignas los Lines del txObservaciones. El problema seguramente se producirá cuando liberes el Observaciones que indirectamente estas destruyendo el Lines de txObservaciones. Esto indudablemente producirá errores dentro del txObservaciones.
No entiendo la lógica pero creo que puedes prescindir de la variable Observaciones accediendo directamente a txObservaciones.Lines.
Saludos!