Here is one answer: http://alienryderflex.com/polygon/
You could also use Microsoft's Geometry classes. Create two geometries (one point, one polygon), then do an Intersection of them. If there is an intersection
http://msdn.microsoft.com/en-us/library/system.windows.media.combinedgeometry.geometrycombinemode.aspx
If these methods take too long, you could first wrap the polygon in a bounding box and test if the point is within the min/max lat/long of the box
Note: If your polygon crosses international dateline you may need to add additional code up front before these tests (i.e. add 360 degrees to longitude of polygon's vertices and to point if the longitude is negative so the algorithms work).