If you put the C.D.C. under defense why is it not run by the army ?
Under the Constitution, the Legislative Branch makes the laws, the Judicial Branch interprets the law, and the Executive Branch enforces the law. The President is Commander in Chief to keep the military under civilian control.
There are several departments under the President, who happens to be Commander in Chief, that are not on the Defense side. So ther CDC can be under the President without being run by the Army. The CDC is under the Department of Health and Human Services.