I disagree. Loghain and Celene both seem to do what's best for them. They don't do what is best for their countries, they do what they think is best.
Nothing Loghain did would weaken Ferelden anymore than it already was. Most didn't know of these crimes and warred with Loghain because he was regent, nothing done benefited him personally either. He wasn't hurting Ferelden. Orlais on the other hand has been on decline for a long time, and nothing Celene has done has fixed any of this. Celene also doesn't do what she thinks is "best for her country" when her position is threatened.
If Celene did what was right for Celene she'd have killed Gespard immediately after he tried to give her a "hunting accident".
Except you know she can't because that's not how Orlais works.
She didn't because she was trying to avoid starting a civil war which would harm her people. She thinks this to herself in the book. Unless shes lieing about her motives in her own thoughts, I'll take her word about her movities.
She didn't kill Gaspard because Gaspard is better at the Game than she is. Otherwise, she would have killed him long before things progressed to this point.
Besides, how does insisting on having commoners and elves be educated at universities serve herself? If she was so selfish she would just support the status que.
Because it makes her look good and legitimizes her failed attempt at being empress, just as her marrying Calian would have done the same.