You can't make the assumption 3.0 - x ≈ 3.0. That only works for weak acids where x is small. Your calculation would lead to x ≈ 103M - does that look sensible? pKa = -7 means it is a strong acid that is essentially fully ionised in water. So for 3.0 M HCl, you can take [H3O+] as 3.0 M.
What you could also do is call the concentration of undissociated HCl y; then [H3O+] = [Cl-] = 3.0 - y, and
Ka = (3.0 - y)2/y
and simplify by assuming 3.0 - y ≈ 3.0 (Check the validity of this assumption after calculating y.)