Take a look at these gifs, where Archimedes isn’t being used at all. You can see that the parts initially start out inside of the original parts with no bits sticking out, but once they’re moved upwards I run into the same problem that you’re reporting:
Moving the part upwards using World Space
Moving the parts upwards using Local Space
Moving the parts upwards individually using Local Space
Archimedes is offsetting the rendered part relative to the selected part. It doesn’t really have any context to know that you want to offset the rendered part down the slope more to match the parts underneath - it’s just trying to make a perfect slope based purely on the part that you have selected when you hit the render button.
I recommend just using ResizeAlign along with Archimedes so that you can easily fix this without having to do a bunch of individual movements from the original position.