not sure, your code isn't very detailed. But you could try something like this:

[pascal]
var
Form1: TForm1;
mouseImg: TDirectDrawSurface;
mouse_X, mouse_y : word;

implementation

{$R *.DFM}

procedure TForm1.DXTimer1Timer(Sender: TObject; LagCount: Integer);
begin
DXDraw1.surface.fill(0);
DXDraw1.Surface.Draw(mouse_X, mouse_y, mouseImg.ClientRect, mouseImg, True);
DXDraw1.Flip;
end;

procedure TForm1.DXDraw1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
mouse_X := x;
mouse_y := y;
end;

procedure TForm1.DXDraw1Initialize(Sender: TObject);
begin
mouseImg:= TDirectDrawSurface.Create(DXDraw1.DDraw);
mouseImg.LoadFromGraphic(dximagelist1.Items.Items[0].Picture.Graphic);
dxtimer1.Enabled:=true;
dxdraw1.Cursor := crNone;
end;

[/pascal]

This code requires one image in a dximagelist, one dxtimer with enabled set to false, and of course the dxdraw component.