I paid $4/per bearing at local hardware store.
has anyone ever done this job?

Kubota parts digram shows a bearing cover both upper and lower. I'm not certain if they were on before. Whatever was between spindle and bearing inside the pulley holder is pretty much disintegrated so it's hard to tell. It looks like it could have been some sort of plastic cover. Kubota quoted me $15 each and I'd need 6 (3 upper and 3 lower). This seems whacky since everything else is reasonably priced and this is double the cost of the bearing. And it looks like a $2 piece of plastic. this part is not making sense.
After ruining the first pulley I gave all the others a good shot of PB Blaster, and I also hit them with NitroLube (another snake oil that claims to do it all). Let them sit over night. Mostly, i think I used my brain when I was fresh today. I put the 2 jaw puller on the pulley and put nut on top of spindle. I tightened puller just snug, maybe a bit tighter. Then I smacked the top of the puller hard with a big hammer. Did this a couple of times. Then puller got loose, so I re-attach/snug puller and kept repeating the smack as it slowly lifted pulley off the key/keyway. No damage= proper removal method (I think).
For the spindles, I put nut on again, then smacked nut a few times downward, not too hard, basically tapped out the spindle. Then the pulley bearing holder removal ..... I just hit on the bearing I could see inside and the pulley holder fell off. I had tried prying from inside deck, which also worked but is not correct and more work, plus risk of damaging deck. I'm replacing all the bearings anyways, so hitting top bearing to remove pulley holder works better and no risk of damage to deck.
one other thing: Kubota sells a complete assembly with new spindle, bearings, bearing holder. They call it an optional kit. Cost is $191. Seems steep for $8 worth of bearings. Although I'm still unclear on the "lower cover" and cover parts/purpose.