Devs are in a tough spot sometimes, because we have to build what designers ask for and can't always push back. It's also not always easy to advocate for a less fancy design that is more obvious. The truth is, most people don't care about the design as long as it looks thoughtful.
Here is the same form using my own CSS framework and allowing elements to be what they are:
https://codepen.io/davetron5000/pen/vYwjWxo?editors=1100
The <select>s ARE ugly. But they are obviously for what they are for and I think this trumps all