Best algorithm for inversion of matrix spanning many orders of magnitude [duplicate]

This question already has an answer here:

I have a very similar problem to the one described in Calculate inverse of dense matrix with entries of very different magnitude. The reason why I am opening a new question is because as far as I understood the answer given to the problem in that question was too specific for the problem considered.

My issue is that I have a matrix C which is fairly large (say typically 500x500 entries) and the entries are spanning some orders of magnitude, typically from $10^3$ to $10^{-16}$ and I need to INVERT this matrix. I really need to do this, as in fact in a following stage I need to use the inverse matrix in some multiplications with other matrices. This is also the reason why I am more interested in the PRECISION of the inversion rather than the performance in terms of speed.

Therefore my obvious question would be: what is the best algorithm to use to get the inverse matrix in this case?

I tried Singular Value Decomposition, but I noticed that it is producing unstable results.