the chances are slim that your magneto is bad (it is just a magnet that spins around). the problem most likely is located somewhere on your stator plate or your wiring harness.
1) check the points and clean them. (to clean them take an emry board (you know, those cardboard nail files) and put it inbetween the points and pull it out. do this just a couple of times. then take a clean rag or paper towel with a solvent on it (prefferably laquer thinner since it does not leave a residue) and place that inbetween the points and pull it out until it is clean.
2) your timing could be off i dont know what you would have to do to set the timing your particular bike, but if it is a minarelli engine. the timing needs to be set to 23 degrees before top dead center. but that is just for the minarelli V1. it varies from engine to engine. (setting the timing can be a tricking thing some times, basically you are moving the stator plate back and forth adjusting the time at which your spark plug fires)
3) your could have a partially grounded wire in your wiring harness. snoop around. makesure every thing is touching where it should be.
4) check your spark plug wire and your spark plug cap. makesure everything is nice and clean.
5) the last and most obvious thing is to check your sparkplug. spend the couple of bucks and get a new GOOD plug (the platinums are good, i like NGK, etc).