Screening of charge impurities in graphene is analyzed using the exact solution for vacuum polarization obtained from the massless Dirac-Kepler problem. For the impurity charge below a certain critical value, no density perturbation is found away from the impurity, in agreement with perturbation theory. For the supercritical charge, however, the polarization distribution is shown to have a power law profile, leading to screening of the excess charge at large distances. The Dirac-Kepler scattering states give rise to standing wave oscillations in the local density of states which are prominent in the supercritical regime.