The easiest way to spot a fake is usually if it has a "fight strap" and you didn't pay $300+ for it.
I don't know about the Olympic ones, but the dead give-away from a distance for the fake Flames jerseys is the colour. The regular home jerseys are much darker red than the actual jerseys. The retros that were made this year were almost orange, the collars were a solid white, and the stripes were sewn into the jersey rather than dyed. Some of the regular jerseys don't look too bad, but the retros all looked horrible.
Up close, the stitching doesn't look as good as the official jerseys and the fabrics are much lower quality.
Here's a photo of Crosby (very big):
http://z.about.com/d/proicehockey/1/...7439467_10.jpg
Here's a knock-off you can buy for less than $50 from China:
http://www.ajerseys.com/images/2010/02/25/35918700.jpg
The most obvious thing is that the font on the name is much thicker on the knock-off. The stitching looks pretty bad, and it doesn't have the "A" on the front.