To call a person a 'Kanone' is not restricted to WWI Flyers. Its a term for a winner, an expert. It was in use up until the 1950's, but no more.
It has nothing to do with Kanone = Cannon. It cames from Kanon ( Canon, Form, Range). If somebody's work is too bad, we still call it 'unter aller Kanone', which comes from 'sub omni canoni' , which means its below /out of any judgement range.
On the other hand, I have read a lot of primary sources now and never found the use of 'Kanone' for a Ace. They were usually called 'Erfolgreicher Flieger' or something like that. Kanone was used for sports aces....