The first one has to do with the fact that in the last three wars, U.S. troops were delivering the vast majority of the firepower. During Desert Storm in 1991, there were 500,000 American troops out there and 15 were known to have been killed by friendly fire (there were probably other cases, but in a battlefield situation, it's often very difficult to tell which side did the damage.) In the 2001 Afghanistan campaign, there were about 10,000 U.S. troops and eight confirmed friendly fire deaths. In Iraq during 2003, there were 200,000 U.S. troops and 17 known friendly fire deaths. One thing not represented by these numbers is the intensity of combat, which was far higher in 2003 than in 2001 or 1991. Moreover, the 2003 fighting was often in built up areas, making it easier to fire at the wrong target. The 2003 sand storms didn't help much either.
Second, any new identification technology has to operate without slowing down combat operations. When troops find a likely target, delays of seconds can be fatal to them. Also very dangerous are false signals. False positives (identifying enemy troops as friendly) means the bad guys have a better chance to get you. False negatives mean more friendly fire incidents. A lot of "friendly fire prevention" technology has been developed and tested since 1991. None of it proved ready for prime time. That said, one new set of technologies was developed in the 1990s that did reduce friendly fire incidents. This was the GPS (satellite guided) smart bombs like JDAM. These, combined with new equipment for the controllers on the ground made a big difference. The ground controllers now had special binoculars with built in laser range finder and GPS. Find the target with the binoculars, fire the laser range finder, and all of a sudden you have the GPS coordinates that the JDAM needs. For the past sixty years, infantry had been leery about calling in bombers because of the difficulty of accurately identifying the target for the pilots overhead. The new technology took a lot of uncertainly out of all this. Yes, there were still some friendly fire casualties with JDAM, but there were also a lot more bombs dropped close to the troops, but on the enemy. Many friendly troops owe their lives to JDAM, because without it, they would not have gotten those accurate bombs dropped when they most needed it.
The third major problem is the inherent chaos of the battlefield. Some of this has been removed with the introduction of battlefield Internet technology like Blue Force Tracker (which shows all friendly vehicles and groups of infantry on a computer screen, along with a map of the area). But when you get close to the enemy and start shooting, things were often moving too fast for Blue Force Tracker to keep sorted out. At that point it was mainly the superior training and discipline of American troops that prevented a lot of friendly fire. In built up areas, be they a Afghan fortress or a major city, things get even more confused. And then there are often "no-win" situations where a commander either advances quickly against an enemy force, and risks more friendly fire, or takes more casualties because the enemy is left in a better position, or simply because the battle will last longer.
All of this is further complicated by the problems created when members of Congress decide to make an issue of friendly fire and "do something about it." Very few members of Congress have any combat, or even military, experience, and often are dismissive when combat officers try to explain the inherent problems. This is why one of the least popular assignments a military officer can get is in Washington, dealing with Congress. While most members of Congress will sit down and try to understand, it's the few who won't, and are determined to "make changes" regardless of whether these new procedures will kill more American troops in the future. You could consider this just another form of friendly fire.
American attempts to decrease or eliminate friendly fire incidents are running into three major problems.