Symptom
I clicked on the activate button, the theme changes on the frontend, but on active status is not applied to the activated theme.
Possible cause
In my case the reason is that the folder name of the activated theme is numeric, for some reason, WordPress doesn't handle numeric folder name nicely.
Solution
Change the theme folder name to alphabetic solves the problem.
Hope this helps you and saved you some time.