Yes, you need to use xcursorgen. To do so, you need a config file. For a simple, non-animated cursor, it just needs to look like this:
Code:
<size> <hotspot-x> <hotspot-y> <file>
<size> must the size of the cursor image, in pixels; for instance, a 10x10 image should have a value of 100. <hotspot-x> and <hotspot-y> should be the coordinates of the location where the cursor responds to clicks. <file> should be a PNG image containing the cursor image.
To generate the cursor, just run xcursorgen <config-file> <output-file>. The generated cursor will be stored in <output-file>.
For info on creating animated cursors, see the xcursorgen manpage.