I have had this issue.
The data looks great in InfoPath right before submit.
Submit to SQL and the last record is repeated instead of the new record.
I think it is a bug. The only way I have fixed it is to back track to my previous version before the last change and do it again.
I think something corrupts sometimes to cause this.
Hopefully you have a saved version from before the modification you made.
Save often and test often to make sure it has not broken. I have not had it happen twice but I have had it occur on a couple different forms and with both 2005 and 2008 databases and in InfoPath 2010 and 2007.