To get the menu to order the same way the side menus are ordered, you will have to order them according to category name alphabetically. To do this, open up the file CSSMenuWriter/cssmw_home/menu.php and find the query that looks like this:
$query_menuwriter_categories = "SELECT CategoryName, CategoryID FROM ps3_categories WHERE CategoryParent = 0";
change it to look like this:
$query_menuwriter_categories = "SELECT CategoryName, CategoryID FROM ps3_categories WHERE CategoryParent = 0 ORDER BY CategoryName ASC";
After doing some testing, it looks like the issue where some of the options are not ordered correctly is caused by having a previous option deleted and the OptionID is reused. For example if you have productA that has options a, b and c, with OptionIDs 1, 2 and 3 respectively, and you delete option b, then there are only options with OptionIDs 1 and 3. If you then add an option say option d, the OptionID that is used is 2. It would take quite a bit of modification to change the way this worked. One thing you can do for the ones that are out of order is to remove that option group and add it in again or go into the database and change the OptionID for the ones you want ordered differently. There's no easier way to do this unfortunately.