What’s going on is that component instances are functionally identical to each other as far as the layout is concerned. This is particularly noticeable with self-directed components, because the parent element isn’t telling them where to position, as in a stack. So if you move a self-directed component, all the instances of that component move to the exact same location.
We do this because there are times where you want a component to always be in a specific location, like a status bar that should always be 100% width and at the top of its parent.
To give a component instance different layout settings, after you duplicate, press the “override” button in the layout tab, next to “element layout.” This will override the instance’s layout settings, but its children layout and style settings will remain linked to the component.
Here’s a super-quick video showing that:
All this said, Kevin and I have discussed that a component instance’s layout settings should probably be in the “overridden” state by default. In common use, I think it’s much more likely that instances will have different positioning / layout than the same.
Let me talk with Kevin on it, but I think this is something we can probably get changed around in the next release or two.