Detecting cryptolocker domain names like the cited "uqxypfdjiwwrdvi" is easy. You can reliably detect them even by looking at bigramms only. Did you compare your approach to simple n-gramm approaches?

How does your algorithm cope with word list based DGA that yield domains like "saladdoctorbike.com"? There are quite a few families that use wordlists, e.g., Multibanker, Gozi, Matsnu, Suppobox, ...? I reckon they must get very high "non-DGA" scores.