The first part is not necessarily true. Yes the most accurate kicker with the strongest leg SHOULD be the top kicker, but we can't stop with that assumption. Opportunity is a huge factor in kicking. Rackers on SF would be nearly worthless. With arz he's top 3. In your scheme a bad kicker that gets 40 attempts and makes 25 would outscore a kicker that gets 20 attempts and makes 18. Which is the better kicker? In the real world it's the second. Fantasy scoring needs to be the sum of all the factors and I believe small deductions for misses on short fg attempts help this.
In all respect, you are sliding down the slippery slope there. (I know im a little guilty with my wind and rain example.) The example you provided there would give the bad kicker close to zero total points if you subtracted missed field goals. Since he is a bad kicker, he will not get many long, big point scoring fg opportunities just because he is a bad kicker and the coach will rather punt then risk his bad kicker missing the long field goals. So those fg's you have the bad kicker missing will be shorter, point deducting fg's while the ones he makes are of the shorter 3 point category. This kicker will barely score any points. In actuallity this doesnt happen. Regardless of the scoring format, you are going to have to look at the opportunity a kicker will get. Rackers on San Fran with your format would suck too fantasy-wise compared to other good kickers.
As for the bolded part. You are making the assumption that a fg is automatic. Each play is positive or negative. Gaining nothing is negative. In the fg scenario you are starting at +3 then going to 0. The real way of looking at it is starting at 0 and going from there.And yes teams don't lose points for missing fg's, but kickers do lose their jobs for it.
With that logic, a wr recieve can either drop or catch the pass. It is positive or negative. Then if the wr drops the pass then he should lose points. This arguement still does not make sense unless you are willing to agree that a wr should loss points for missing a catch.