Can't really have FATFS and MSC working concurrently, consider MTP
Reporting formatting issues tends to revolve around read issues (ie IO routines not returning content properly), failure to report capacity properly.
Test thoroughly the IO routines. In FATFS this would be that the routines in DISKIO read/write blocks correctly, ie reads return consistent content, and matching exactly what was written, over entire media.
Tips, Buy me a coffee, or three.. PayPal Venmo (See Profile) Up vote any posts that you find helpful, it shows what's working..
If I remove FATFS and make it working with SDIO the problem was same. capacity of card was getting read correctly.
Some time I had seen the sd card was loaded property like only 10% time. something in configuration is not right or the module may have the problem in case.