The border-spacing property is the one you should use (margins don't apply to internal table objects). But it only applies to tables, not to cells. You should set the border-spacing on the ancestor element that has a display value of table.
In addition to your code you can try like this
#wrapper{
border-spacing:10px;
display:table;
}
#wrapper > .col {
display: table-cell;
/* margin: 0 15px 3px;*/
padding:10px;
}