While Heartsong does have a 20 second internal cooldown, compared to Power Torrent's 45 seconds, it also has a lower chance to proc (at 25%, compared to Power Torrent's 33%). It's difficult to have a higher uptime on something that you have a reduced chance to proc, in the first place.

The kind of difference in chance to proc that you are considering is negligible. Consider this.. every single heal, hot, dot (say holy fire dot), including every target hit with PoH and PoM is a chance to proc. Even if we were considering an absolute worst case scenario and we were purely casting on a tank .. averaging one cast per 2 seconds.. the chance that Heartsong would NOT proc within 25 seconds (the point at which Power Torrent would come off cooldown if we had used that instead) is 2.4% or (3/4)^13 where 13 is the number of heals we did, and 3/4 is the chance for one heal to fail to proc Heartsong. In a typical fight we will have more than 13 heals within 25 seconds, so yes the uptime on Heartsong is higher, because the ICD is so much lower. In my experience the difference is significant.

Oh, also Heartsong lasts for 15 seconds, while Power Torrent lasts for only 12 seconds.. clearly the uptimes won't be the same. With a quick search I found some testing that has the average time between procs for these enchants at 51 and 28 seconds, which is an average of 6 seconds (after the ICD) to proc PT and an average of 8 seconds to proc Heartsong.. resulting in 54% uptime on Heartsong and 24% uptime on PT.

I would be interested to see your findings, when you incorporate Rapture into the formulas for both enchants and how it would affect the returns from each.

You know, I've been so busy I forgot about this, but I can add some more detailed calculations for the sake of completeness.