Here is what worked for me -
* Delete the Flat File Destination and the Flat File Connection Manager.
* Create a file with the column headings you want in the order you want (no records needed - just headings).
* Right-Click in the Connection Managers pane and select "New Flat File Connection..."
* Browse to the file that contains your column headings.
* Check the "Column names in the first data row" checkbox.
* Click on the Columns tab. You should see the columns as they appear in the text file.
* Click OK to close Flat File Connection Manager Editor.
* Add a new Flat File Destination and connect the OLE DB Source to it.
* Double-Click the Flat File Destination.
* Select the Flat File Connection Manager that you just created.
* Click on the Mappings tab. The lines between the Available Input Columns box and the Available Destination Columns box are now all criss-crossed but the destination columns are in the right order.