From the example you give the before element doesn’t have a width, so the element is only as wide as the content. There’s no space for it to “center”.
Now, if you add width like this.
.icon-design:before{
content: "\e610";
color:#f16822;
text-align: center;
display: block;
width:100px;
}
that will let it be centered. Also you need the display: block for it to work. If you have other content in the div and you want the before element to be to the left of it. You’ll need to use display: inline-block;