So, the reason we presently offer up the uglier blob of code rather than simpler, browser-native form is for async loading across more browsers: The async attribute is only supported in newer user agents, and we want to ensure that we don’t block loading in older versions of IE as well. It would, naturally, be nicer to offer the cleaner code by default (and, for embedded Tweets we do, since it’s less prone to causing errors in Content Management System editors.)
Some day the browser support will catch up enough and everything will be beautiful 