Well, as they say, it depends... not all batteries are created equal, and not all batteries are cared for equally. It also depends on how heavy they get used and what you define as end-of-life...
1000 charge cycles may be true, and 2-3 years may be true as well... that in itself doesn't contradict itself if you consider the case where a battery gets recharged every day, then you have 1100 cycles in 3 years. However, it doesn't mean that if that same battery only gets cycled only once a week, it will last for the same 1000 cycles, because that would be 20 years, and here the calendar loss also comes into play.
So there are two factors to battery degradation- calendar life and charge cycles. Calendar life, but also the number of charge cycles depends on how hot the environment is (both in use and under storage). Calendar life also depends on the state of charge the battery is kept in, with 100% yielding the lowest life. Cycle life depends on how high the battery is charged up... a charge to 100% is much harder on the battery than a charge of 90% or 80%, and going down to 0% also harms the battery more than keeping it at 10% or 20%, though maybe not as much as the "high end" of 100%. Then useful life may be hampered by the internal resistance getting higher and higher... the capacity may still be at 50%-80%, but the internal resistance will be so high that the device can't make use of the whole charge anymore, or shuts down spontaneously under high load because the voltage sags too much then.
Finally, battery life also depends on the chemistry... some batteries are optimized to withstand many charge cycles or high temperatures. Think of electric cars... if they would kill their battery, which costs thousands of dollars, in 2-3 years, they would become highly unrentable compared to gasoline cars. On laptops and phones it isn't that severe because the battery is much cheaper, however, in the case of non-replaceable or only factory-replaceable batteries, manufacturers typically take better care of offering more charge cycles, say 1000 instead of 300-400.
Just for the record, I have already experienced the following things:
- The battery that came with my used laptop was about 3-4 years old and had just a few cycles on it (3-5), but was still down to half its original capacity due to having been kept at 100%
- The replacement battery I bought then in April 2012 now holds at about 80% of its nominal capacity and 440 charge cycles.
- Another battery I got with another laptop is from 2009 (six years old), has got 8 charge cycles on it, but still about 90% of its nominal capacity and a remarkable low internal resistance... this one apparently has been taken care of well.
- The battery of a laptop of a colleague is pretty much shot after 3 years... he's been using it regularly in meetings, and now although it still shows about half of its nominal capacity, it actually shuts down after only half the time due to internal resistance
- Finally, the original battery of my father's mobile phone was finally replaced in June. It still worked after about 10 years, but was down to about half an hour of talk time and got very hot when charging (probably due to high internal resistance).
So as you see, all kinds of scenarios are possible.