This is about where we got to in a conversation with one of leading CCPM vendors. I like to keep iteration cycles at 2-3 weeks and I also like to keep a regular cycle (ie. I've seen significant benefit at keeping to a regular schedule of a 2 or 3 week iteration/sprint). With that in mind, it doesn't make sense to define a chain for the iteration with a buffer which would make the iterations variable in duration.
I am entertaining the thought of some kind of a project buffer. By the nature of our business (R&D), it can be difficult to predict how long the overall project will take to meet the objectives of our internal customer. Something like COCOMO 2 can help but it is a top down (parametric) estimating technique, so there is more variability. We can define some overall project buffer and consume (or give back) at the end of each iteration in evaluating how much was done (or, more likely, what new learnings created more stories/backlog).
So I'm thinking the value of CCPM may come in our ability to communicate when we think we'll meet the project objectives (and when those developers can be assigned work from a different project).