Hi. Rethinkinking your problem I found that it is probably much easier to split the bucket in three, namely before_head, head, and after_head using apr_bucket_split and replace the head bucket.
Did you read this: http://www.cs.virginia.edu/~jcw5q/talks/apache/bucketbrigades.ac2002.pdf Sincerely, Joachim