Scrub the old concrete with stain remover and a power washer. Use a metal scrub brush to rough up the surface so the new layer of concrete will adhere better.
Repair any pits, potholes and minor cracks. Use a chisel and hammer to widen the bottom and fill any deep cracks with sand until the remaining depth is 1/2 inch from the surface. Spread vinyl patch compound over sides and expanse until it is level with the driveway. Feather out the sides of the patch with a flat trowel.
Fit 2-by-4-inch form boards against the perimeter of the driveway and connect them end-to-end with screws and a drill. The top of the boards mark the level of the new, raised surface, and should sit 1 inch above the old surface. Wedge stones or shims beneath the boards closest to the home to slope them toward the street for drainage.
Mix concrete in a concrete mixer using a ratio of three parts sand to one part cement and stir in water until it has a batter-like consistency. If you're uncomfortable mixing it yourself, hire a contractor to do it for you.
Spray the old surface with a hose to prevent it from absorbing moisture from the new concrete.
Pour the concrete resurfacing mix over the old surface and push it into corners and sides with a gauge rake. Work a long board across the surface to scrape excess and spread it over low areas. Go over the surface with a squeegee until it is smooth or water seeps to the surface.
Wait 48 to 72 hours for the new surface to harden. Roll penetrating pure acrylic sealer over the driveway with a roller brush to protect it from weather damage.