So there are two types of fragmentation I think going on here...
1. File fragmentation that your typical Windows Defrag would address or some of the better pay for tools like diskkeeper. What you did would help make the entire file a large contiguous file to NTFS. However...
2. Database fragmentation where tables within the database have grown to accommodate a table/field say for 20 characters, then that field is deleted, yet the field is still sized fro 20 characters. Factor that into the thousands of database updates that happen in the SEP database, and you can see where there will be a lot of unused space within the SEP database.
The Db shrink tool will address #2 and remove a lot of the empty space and fragmented tables. Besides, a smaller database typically runs faster.