Cerium oxide is the polish of choice for glass. Before you can polish scratches out of glass, you must first determine how deep the scratches are. If you can feel a scratch as you run your fingernail across it, the scratch is too deep to be polished out with cerium oxide. You must first grind the scratch out.
The grit used to grind out the scratch will depend on the depth of the scratch. It is best to use the finest grit you can to grind out a scratch. I suggest starting with 1200 grit. If that is too slow, go to 600 grit. However, after grinding with 600 grit, you will have to re-grind with 1200 or 3000 grit to remove the scratches from the coarser grit, before it can be polished with cerium oxide.
An easy way to grind out the scratches is to use diamond powder with olive oil as a lubricant. After grinding, carefully clean off the area you ground with alcohol before going to the next finer grit. Each grit should be used on a separate polishing pad. It's best to use an attachment on a drill, or an electric buffer.
Mix cerium oxide with water to create a slurry that's the same consistency as milk. Put the slurry on spinning buffing pad. Harder buffing pads made out of hard felt, or leather work best. The polishing action will be fastest when the cerium oxide is damp, but not dry, or runny wet. Fill a spray bottle with water and use it to keep the area you are polishing damp.
Glass is relatively easy to polish. Therefore, you don't need to use the more expensive 99.9% cerium. Instead, the less expensive 90% Optical grade will work fine.
Just be warned, polishing a windshield w/ laminated glass, especially grinding will often result in distortion. Tempered (door and back glass) are less likely to distort.
If you are feeling the scratches w/ your fingernails, it is fairly deep, proceed with CAUTION!
Eastman sells a great kit for eliminating scratches. It works on scratches that will not hook your nail as you run it over the scratch. If they are that deep, then you risk distorting your glass like Texasex mentioned.