Why do we need to estimate eigenvalues?
It seems to me that we can directly calculate ... which can be done in a few second in matlab.

Who says that Matlab is calculating it directly, or that it isn't using Gershgorin's circle theorem in its algorithm?  Can you look at the code to see what they're doing?
Finding the eigenvalues of an $n \times n$ matrix is tantamount to factoring an $n^{th}$-degree polynomial.  Factoring any polynomial of degree greater than $n = 4$ is an iterative process, which works better if you can start with a good guess at the roots.
So, when Matlab does an eigenvalue decomposition of your $1000 \times 1000$ matrix, it is not &quot;directly calculating&quot; it -- it's guessing at values, then refining guesses, then reducing the matrix, etc., etc.
Pursuant to that, Gershogorin's circle theorem looks like a handy way to not only do get a set of initial guesses, but to bound the set of possible eigenvalues in a manner that's easy to test for if your algorithm starts to stray.

Is there anything wrong with the way I think?

I would say that believing that typing something into Matlab and getting an answer is the same thing as directly calculating it is an extreme error in thinking.  Someone knows how to solve the problem - you hope.  But if all you know how to do is press buttons in Matlab and get an answer, the set of persons who really know how to solve the problem doesn't include you.