Chegou a efetuar testes e verificar se mesmo funciona em lazarus?
vou dar algumas boas sugestões, primeiro divida igual é feito com os Speds os registros em units para uma melhor manutenção do mesmo. tu fez uma única única com tudo junto.
tente tratar a geração do arquivo sem usar o TStringList! Faça uma unit somente para o registro do componente.
use as propriedades pra expor algumas no object inspector.pro exemplo nome do arquivo, pasta onde está!
lembre-se de deixar no public somente o que é necessário os métodos internos usados não precisam dele.
sugiro olhar os fontes dos componentes de Sped para se basear e tirar proveito.