To fill an empty bucket with chocolate, use it on a chocolate source block. The block is consumed in the process. Flowing chocolate does not fill a bucket.
Filling by Spout
Using a full chocolate bucket on a solid block places a chocolate source block against that block, emptying the bucket.