Why isn't transaction log free space always reused?
You may have got the answer already, but it interested me so I thought I'd take a look, and expand a bit more with sources. 

As hinted briefly above, the extra space reserved for a possible rollback. 
As I can't say it any better, Microsoft TechNet describes it thus:


  Each transaction reserves space on the transaction log to make sure that enough log space exists to support a rollback that is caused by either an explicit rollback statement or if an error is encountered. The amount of space reserved depends on the operations performed in the transaction, but generally it is equal to the amount of space used to log each operation. This reserved space is freed when the transaction is completed.
  - Log Architecture and Management


So basically your transaction required that "extra" space reserved until it was actually committed, as that space was not available in your log file, it grew. Your transaction was committed (and therefore not rolled-back), and so that space was not actually needed.

I won't labour the point further, but just this might be of use too:

The ever-wise Aaron Bertrand talks about some events that SQL Server tracks, including log growth. These might help you track down what's happening with your log autogrows in the future