one thing you need to be careful of when rotating a custom marker image is making sure the image content is the the middle of the image.
if for example the image is a 50x50 bitmap and you have a arrow image in that really only takes up the top left 5x10 pixels, then when you rotate the image its going to be displaced.
I'm not sure if this is the displacement issue you are having, but just thought it might be something you haven't thought about.
what I have usually done in this sort of case is create a Sprite with a bitmap in it, then rotate the sprite with something like sprite.rotation = 90;
and then if its not a image that has the content directly in the middle of a square, then i offset the image based on how much it was rotated and the size of the image. and i just add that offset in the CustomMarker.createDisplayObjectMarker() function.
Hope that helps.
-Will