At first I thought: Good idea, and uploaded a new version with utf8bom as default encoding for CSV files. But then I changed my mind and reverted this: fpspreadsheet is a library spreadsheet files, so if you want to create data for Excel or Calc you would of course write in their native format, not in the crooked CSV. On the other hand, if you write CSV files it is most probably for other programs, and I estimate that most of them will not expect to have a BOM at the beginning of a text file. Delphi 7, for example, chokes if you load a UTF8-BOM source file.
Luckily the situation is very flexible. If your program is supposed to write a CSV for Excel/Calc just change CSVParams.Encoding to 'utf8bom'.