Yes, he followed the law but that is not enough.
Judge Greer made dubious and unethical judgments by being biased to one side, and has financial and other relationships that caused conflict of interests. Greer had, and still has, an obligation to recuse himself from the Schiavo case.
I agree with you, he should have been removed from the case based on obvious conflicts of interest.
Unfortunately, recusal motions are filed with the judge sought to be recused, and are reviewed by other judges using deferential review standards.