So why do you care about debugging powershell scripts? Umm unless you have the superhuman ability to write correct scripts the first time over, you better care! 

Powershell team long back (2005 qualifies as long back!) posted some useful stuff about debugging powershell in form of a 7 part series. What's the best thing about these posts - they are short!(just kidding, they do a good job of introucing someone with the basics of debugging powershell.)

Part 1: http://blogs.msdn.com/monad/archive/2005/11/04/489138.aspx (Terminating vs. Non-Terminating Errors, ErrorRecord)
Part 2: http://blogs.msdn.com/monad/archive/2005/11/08/490130.aspx ($error)
Part 3: http://blogs.msdn.com/monad/archive/2005/11/09/490625.aspx (write-host)
Part 4: http://blogs.msdn.com/monad/archive/2005/11/09/491035.aspx (set-mshdebug)
Part 5: http://blogs.msdn.com/monad/archive/2005/11/11/491967.aspx (Preferences and Commandline Options)
Part 6: http://blogs.msdn.com/monad/archive/2005/11/15/492769.aspx (Trace-Expression, Breakpoint Script)
Part 7: http://blogs.msdn.com/powershell/archive/2006/04/25/583234.aspx (How Traps Work)

A more recent post by Jeffrey (Who? The powershell Architect dude!) has a link to the online available chapter on "Debugging and Error Handling" from Windows PowerShell: TFM.

http://blogs.msdn.com/powershell/archive/2006/12/29/documenting-trap-and-throw.aspx

So long.