Hola, es ir jugando con la propiedad canvas. Fijate que defaultdraw lo asigno aqui, pero solo asignandolo una vez por algun otro lado ya tendrias bastante
Código Delphi
[-]
procedure TForm1.TreeView1CustomDrawItem(Sender: TCustomTreeView;
Node: TTreeNode; State: TCustomDrawState; var DefaultDraw: Boolean);
var
R : TRect;
begin
DefaultDraw := false;
R := Node.DisplayRect(false);
Sender.Canvas.Brush.Color := clBtnFace;
Sender.Canvas.FillRect(R);
Sender.Canvas.TextOut(R.Left,R.Top,'item text = ' + Node.Text);
end;