Make sure the datasource only implements one of the plot symbol methods. If it implements both -symbolsForScatterPlot:recordIndexRange:
and -symbolForScatterPlot:recordIndex:
, only the first method will be called.
Look at the plot symbol test in the Mac CPTTestApp example app for working sample code.