Buckling is an ultimate failure, but it occurs when stress crosses yield. You cannot consider ultimate strength when dealing with buckling. Not for ASD and I doubt that it's true for LRFD, either. Neither Johnson or Euler (or the equations combining bending with buckling) consider ultimate strength. These equations are based on elasticity and yield or elasticity alone.
After you hit yield, you're no longer in the elastic region of the slope and from that point, things go downhill in a hurry.
And:
Think of this: In the theoretical world, consider a system where a mass is supported and there is an elastic line with no slack whatsoever attached to the top, which carries none of the weight of the mass. Then, if you instantaneously remove the support, the elastic line will see a total load (for a brief instant) of exactly 2.0 times the weight of the mass. This is similar to what a crane (or lifting sling) sees when dynamically loaded. Your dynamic factor should be 2.0 and your static safety factor should be 1.5, 1.67 or 1.92 (tension, bending and buckling), resulting in an overall SF of 3.0, 3.33 or 3.84 against yield, just to name a few general cases.
I don't have API 2C in front of me, but remember that for the crane itself, a 1.33 dynamic factor is applied to your numbers to consider dynamic loading, though oftentimes, it is not the same type of sudden loading that a smallish skid would see. For a 100-ton crane lifting a 100-ton load, consider the elasticity of the entire structure, including the platform in addition to the speed at which the supply vessel is heaving. A 100-ton load is less able to apply a sudden impact loading to the crane due to the physics of the overall system. A 100-ton crane, however, can very easily apply an extremely rapid loading to a 5-ton skid being lifted from a heaving vessel, where the skid's lifting slings will see much more than 5 tons. So a 3.0 - 4.0 SF against yield for the skid structure and solid parts is reasonable, although the 5.0 SF against breaking for the wire ropes should also be used. The 5.0 SF against breaking strength of the wire rope is used because it's extremely difficult to determine a yield strength of wire rope.
Furthermore, we're not putting up buildings. For machinery, yield *IS* failure. The moment that parts have yielded, they no longer fit/work together as originally intended. Throwing a safety factor of 5.0 against the wrong failure doesn't solve the problem.
Engineering is not the science behind building. It is the science behind not building.