There is nothing that apache poi could do to alter this behavior, which is a feature of all spreadsheet programs.
The code example you provided does not produce watermarks. Microsoft Excel does not include a watermark feature. Instead, it embellishes sheets with backdrop images.
Microsoft itself states: You cannot print a background graphic for an Excel worksheet. So using Microsoft Excel the sheet's background graphics only are visible in Excel GUI but not in prints.
In LibreOffice those background graphics are called watermarks but Libreoffice states in Defining Graphics or Colors in the Background of Pages (Watermark):
In spreadsheets this background appears only in the print behind the cells not formatted elsewhere.
In Add or remove a sheet background Microsoft describes methods to mimic a watermark in Excel. The usage of a picture in a header or footer to mimic a watermark using apache poi is described in apache POI adding watermark in Excel workbook. But this also means a print watermark. So the watermark is visible in print preview and print only. It is not visible in sheet's GUI. And the option to add picture in a header or footer to mimic a watermark is Excel only. LibreOffice does not provide that feature.