it isn't yet. the current implementation relies on the flightstats API and oraclize.it to call the API from the contract. I think we are still far from truly decentralized applications, and it needs experiments like this to slowly get there. as a next step redundant data sources and oracles might help.