I always assumed the "flat look" controls were meant to save on memory, CPU cycles, rendering time, and to give a consistent look and feel to applications. I think it depends on your purpose and market. Kids seem to prefer shiny candy over function.