I was experimenting with PointStyle trying to draw multiple symbols for each point feature I have and ran into to the following issue.
I have created a class that inherits from PointStyle and overrides the DrawCore method.
When I used GeoCanvas.DrawTextWithWorldCoordinate to draw one character for my single point feature everything worked OK. Then I converted this point to screen coordinates and used GeoCanvas.DrawTextWithScreenCoordinate expecting the second symbol to appear at exactly the same position. But strangely it appeared to the left of the original symbol.
To single out the problem I simply used DrawTextWithScreenCoordinate to draw some character at the predefined screen position (500,500). And again it was placed to the left and above of the expected position. Moreover, after each pan the character moved compared to its previous position! It seems that in this case the center of the character could appear anywhere between 245 and 500 for x, same about y. And when I changed the coordinates to (200,200) the symbol even started to disappear sometimes.
Am I doing something wrong or is it a bug ?