Anyway, I did get my cardigan done, finally:
Of course, this was after I ripped out the collar three times on top of all the stupid little mistakes I make while knitting. My swatch lied, or otherwise I was blinded with my love of this yarn, this pattern, or both, because when I blocked it the thing grew. Not massively, but enough that it felt like it was just hanging on my shoulders, with a huge neckline and floppy collar. Also, I spaced the buttons out too far and they were gaping. After throwing it into a corner and sleeping on it so I didn't rip the whole thing out in spite, I ripped out the collar and button band. I then ripped out three rows of the back before realizing that that section was the only one with live stitches and now I had to pick them back up (which didn't work 100% -- there was an unexplainable gap where the extra yarn hung out at the end of the live stitches and the start of the bind-off -- but I was able to hack it enough and the collar hid it anyway). Once I fixed that, I decided to go down several needle sizes and re-knit it with new yarn (well, that wasn't a choice because I murdered the yarn when I ripped it out). Along the way I decided to put one more button and less spaced out, and put less decreases in the collar. The first thing worked (though I did bind off a bit too tightly), the second thing didn't. Collar was now too small. So I ripped that part out again, added more decreases and knitted over the short rows a bit more so the fronts were bigger. That produced a do-able collar, though I had to sew it down to keep it folded.
I'm still not completely happy with it; it really needs a tighter gauge (damn worsted weight acting like a DK), one button band is slightly tighter than the other, and the collar isn't exactly what I would like...but it does fit more or less now and is extremely warm. Oh well. Shit happens.
I probably should do a proper debrief, but right now it's 11pm and I'm tired, so I'm off to bed instead.