I personally don't like using coordinate systems for locating a majority of my components. In my mind doing this is somewhat of a fallback to the way many aerospace companies used to work, and some still do.
Whether you're going to use a csys or other datum-type geometry, in most cases it is a much better approach to put these datum features into a skeleton part inside the assembly into which these parts are to be assembled. In this manner, you eliminate adding datum geometry which is specific to how the component is located in one single assembly, thereby making the component assembly-independent allowing it to more easily be re-used in other assemblies or future projects, without the component retaining extra baggage as to how it was located in another assembly. This does not answer your original question, other than to point out at what level these coordinate systems should potentially be placed. This is obviously a very small portion of what they consider top down design.
I don't know the details of your specific assembly, but if you need or want the part to be assembled using a coordinate system, you might consider assembling the component into the assembly using standard mate/align type assembly constraints, and then creating a transformation-type coordinate system in the assembly's skeleton part, then lastly redefine the component so it is assembled to this new csys located in the skeleton model. You could then use this same process to located the second copy of this component in its mirrored location. This does not reduce the extra effort in assembling the component, but it does eliminate the component's tie to one specific assembly. Hopefully this makes sense.
Best Regards,
Scott Schultz
Principal Consultant
3D Relief Inc.
3700 Willow Creek Drive
Raleigh, NC 27604
(919)259-0610
-