hunting for idle is usually IACV or vacuum issue. i can't imagine that causing a misfire code, but i've heard of stranger things happening.
problems i've seen causing this code:
bad injectors (try a cleaner)
bad distributor (not the whole thing, but easier to swap than replace insides)
bent/burned valve (if you have been over-revving the engine)
bad headgasket
bad/dirty EGR
it could be lots of things, in general, it's saying too much air is getting in there. you just have to figure out how. try the vacuum stuff first. lines, IM gasket, TB gasket, etc. that would also explain your hunting idle.