I've spent a lot of time Googling and MSDNing on this topic and then stopped at the set_uniqueContentTypeOrder method.
This method will take an array of Content Type IDs and change the "New Item" sequence of the Content Types in your list.
But I can not make it work. Every time I call this method on my list's root folder, I always get an error message says "something is wrong". And when I dig into the log file for the detail, I can only see a "Null reference" error message.