Probably because it would change future events too much?
Like they say on Star Trek, just don't even bother trying to understand temporal mechanics.
I agree if all that needs be done is kill John Connor, why not nuke (even with a small yield tactical nuke) John as a baby, Sarah as a teenager, etc. Or one of his ancestors hundreds of years in the past.
However, at least as far as TSCC is concerned, Skynet is meddling in the past to ensure its own creation (Shirley Manson, et al). So not only is it necessary to kill John Connor (in fact, in the original timeline, it ISN'T NECESSARY because Skynet got built in the first place), it is more necessary that events happen to allow Skynet to exist.
We've already seen the events in T2 (Miles Dyson's death, destruction of the arm and the cpu) and the destruction of the Terk in TSCC not be enough to stop Skynet.
None of this makes sense if changing an event in the past alters the future -- because then the people/things from the future that are displaced in the past would either (a) disappear, because the timeline that created them disappears, or (b) they are stranded and their future no longer exists.
Further, the "original" timeline that happens, without time travel, where Skynet gets built and John brings it down, has been destroyed and crapped on so many times in T1, T2, T3, retconned back before T3, and TSCC, is it even relevant? It's either sloppy writing and show-running, or someone out there is brilliantly aware of it, and in the end this circular drain of ruining time will be a major plot point.
If meddling in time can't change the unfolding of the future (the "lesson" of T3, and seems to be in TSCC) then the corollary to the fact that Skynet cannot be prevented is John cannot die and Skynet must be defeated.