Here you go:
<img src="http://dl.dropbox.com/u/19921470/asteroid_collision_fix.PNG" border="0" />
I highlighted one odd line, why are you taking velocity from seemingly random object? :)
You need to pass the UID of colliding asteroid as parameter to the function, as visibility of picked objects does not carry into functions.
Some random general notes about the whole project that might help you in the long run:
You should definitively look into using families, soon you'll project will become very hard to manage as it grows bigger and bigger. For example, you could have family 'Bullets' which has Friendly and Enemy bullets. Then you could check for asteroid collisions for bullets without having to do separate events for all bullet objects.
You have lots of variables that you could use inbuilt functions for; for example EnemyCrescentCount could be replaced by using EnemyCrescent.Count which returns numbers of instances that exist in the layout. Keeping manual variables like that up to date can become tedious :)
You are making good progress with your project, keep it up! It's looking great! :)