as long as you set a certain width for your cells:
arr.push( row0_cells[i].clientWidth );
cell.style.width = arr[i]+'px';
the cells will take those witdths, what else you could you expect? What's the use of seting them those width?
Why not simply clone the second row and append it to the table? What is the use to append the whole table?