I noticed a different behaviour when drawing on Canvas between Cocoa and all other widgetsets.
Carbon reacts as win32 and GTK2. Cocoa differently.
Open a new project and OnPaint do:
procedure TForm1.FormPaint(Sender: TObject);
begin
Canvas.Line(0, 0, Width, Height);
end;
See attached images, Cocoa does not draw the line properly.
Lazarus 1.8.4 fpc 3.0.4