Casting the real value to DECIMAL didn't change anything. I did some digging on Google and came across something that worked perfectly. Some SQL can apparently us a version of the 'C' printf command. MY SQL statement in Lazarus now looks like this:
SQLQuery1.SQL.Text := 'select invoiceid, company,date,status, printf("%.2f",total) as InvTotal from invoices';
The numbers are perfectly formatted as currency. See screen shot.
This may not work for all versions of SQLite. I have the current version 3.41.2.