I think the problem is in the called object. It looks like the origin point in the object (the blue dot in last picture I think) is not the point you want it to rotate about (the red dot). You have a few options:
1. Edit the called object so that the point of insertion is the point to be rotated about (in the called object use ADD to move the coordinate system so the object will move rotate this point... in other words, center your called object)
2. Know the offset that you have in your called object and move the origin point and rotate the coordinate system before each time you call it.
3. Do the above in a loop for the number of times you will call the object.