This sounds like an issue similar to one I encountered when trying to paste dates in to a worksheet using a macro. The dates were being pasted from an external application called Clarity Open Workbench. The dates in this application were in UK format so 1 Dec 2011 appeared as 01/12/2011. The destination cells in Excel were formatted as "dd mmm yy" and the regional settings on my PC were correct.
If I pasted the data manually using Ctrl+v it honoured the formatting just fine but when run in a macro using...
...it screwed up the dates. So 01/12/2011 appeared in the cells in Excel as 12 Jan 11. The only way I could fix it in the macro was to remove the date format before pasting, then paste the data then reapply the correct date format. Like this:
Not sure if this helps.
Bookmarks