Here are two problems I notice with socionics:
1. Personality preferences imply abilities. Saying that one prefers Fi over Ti does not mean that they don't have the ability to think logically. For example, I've read one description of the EII that says that they have a hard time thinking logically because they see too many possibilities. All that you can say about the EII is that they prefer to use Fi over Ti. They may not live their lives by principles and logical rules, but this isn't an IQ test; you cannot conclude from someone's personality what they are and are not skilled at. This applies to intuition and sensation as well.
2. Rigid function ordering. Suppose someone took a test and it turned out that they prefer Ne, Fe, and Fi in that order as their top three preferences. This is an entirely plausible situation. How can we conclude that they use Fi more than Fe in real life? What really determines a person's personality: a preconceived formula or what they actually use more? Of course, you could argue that such people have misconceptions about themselves, but I'm sure there would be plenty of people in a similar situation; I doubt that they all don't know what they're talking about.
Now, don't get me wrong. I do believe that there are certain trends in personality and that socionics captures these trends well. The problem is when we believe that they have to apply to everyone. No personality system can be that accurate.