そのやり方で何か不満があるの?
文字列8桁のフォーマットに不備がない状況であれば、StringBuilderにつっこんで-をinsertすればいいんだろうけど。
そもそもDATE型ってなに?