They kick because they like the freedom of being without a diaper on. It's just what they do. You should be able to pick hold up his two legs while keeping your finger between his ankles (so his ankle bones won't hit together and possibly hurt hurt him).
To start, lay him down, unfasten the old diaper, and pull the front of it through his legs while you use your other hand to lift his two feet (again, with your finger(s) between his ankles), and hold his "leggies" up. Clean him from that angle, and if you need to clean from the front keep holding his "feeties", straighten out his legs, and clean.
Lay him on the open, new, diaper and quickly flip up the the part that's going to go in the front up through his legs. If you need to, very gently hold your hand across the front of his two thighs while you get the front of the diaper ready for fastening. Fasten quickly.
So basically, you have to just use one hand for both legs/feet and the other hand for the diapering. It's really easy.
Something else: While you're changing him, try to keep his interest by talking to him or making funny voices/faces - that type of thing. It might temporarily slow down some of the kicking if he's concentrating on what you're doing to keep him entertained. (It might not, but it never hurts to have some positive interaction while caring for your baby anyway.)
This is a technique you can use from now until he's a toddler, and you'll need it because in another couple/few months he'll be taking off crawling as soon as you try to change his diaper (and you'll find yourself having to not only hold his legs but having to keep pulling him back too). :)