For me, there are only two reasons to ever buy miles/points. The first is what several other folks mentioned: when you have a specific stay already planned and the purchase is cheaper than cash.
The second reason is to purchase a small number to keep orphan points from expiring in a program you don't typically use. Even that is rare, as it's typically possible to trigger a chance in renew date by purchasing something via a hotel/airline-branded online portal.