Ok, at least in 0.9.6.2, the problem with charset in the Manager is located in: manager/includes/extenders/dbapi.mysql.class.inc.php. The variable $database_connection_method is not available to the method connect(). This seems to have been addressed at least in the SVN trunk. For people with 0.9.6.2, you can use instead:
//@mysql_query("{$database_connection_method']} {$charset}", $this->conn);
mysql_query($GLOBALS['database_connection_method'].' '.$charset, $this->conn);
This kind of thing would have been caught, if error_reporting() was not silencing E_NOTICEs and if the code didn’t use @ to locally silence warnings/notices.
Also addressed in SVN is the use of mysql_real_string_escape() (via DBAPI::escape()) in manager/processors/save_content_processor.php instead of straight mysql_string_escape()
Repeat changes simlar to below to other mysql_string_escape() calls in that file.
//$introtext = mysql_string_escape($_POST['introtext']);
$introtext = $modx->db->escape($_POST['introtext']);
That was a super annoying bug to say the least.
Now, gonna check if that fixes the site title, and some issues with keywords with non-ASCII characters...