Why can't you programmatically reorder the items on the Start menu?
The classic Start menu and the "All Programs" portion of the
Windows XP Start menu
permit you to customize the order of the shortcuts that appear there.
You can use drag/drop to rearrange them, or force them to be sorted
by name.
But why is there no programmatic interface to these actions?
Because the power would be used for evil far more than it would be
used for good.
As noted before,
the Start menu is highly contentious screen real estate.
If a programmatic interface were given to the order of the items
on the Start menu,
programs would just use it to force their shortcut to the top
(and possibly demote their competition).
Once you accept that programs will be doing this to the Start menu,
the ability for the user to reorder the items would be lost
since programs would just override the user's preferences with
their own.