has_many :through failing to save changes

Adding to has_many :through via << works for me in Edge rails. There
is a problem with self-referential relationships, for which I have
filed a patch:

http://dev.rubyonrails.org/ticket/6744

Have a look if that helps you.

Cheers,
Max