I'm not sure what the exact cause of the issue you're having is, but I do know that the design mode can sometimes screw with the layout if your widths and margins are so precise that adding one or more pixels to it will cause floated columns to clear other columns and go underneath them.
The body tag has classes added to it in design and edit mode that you can leverage to modify the styles when in those modes. for example:
.rightColumn
{
float:left;
width:300px;
margin-left:20px
}
.DesignMode .rightColumn
{
margin-left:18px /*remove some pixels to account for the added padding or margin from the widget zone*/
}
This is just made up example. I can't remember the exact styles I had to change to make it look right in design mode, but they were similar to my example. This works for me. I hope it works for you.
P.S. It is also possible that your class names are the same as ones used by Kentico, but it would only make sense if the style sheet were only added in designmode (which I don't think it is)