There are a number of ways you could do this, and the "easiest" way will vary depending on several factors, including the number of features in each feature class.
If it is a small number of polygons, you can iterate through the polygons, selecting the points that are within the polygon by a select by location query, and then do an attribute selection from the already selected features where the polygon's ID and the polygon ID in the points do/do-not match, and then calculate a value into the inPolygon field accordingly. This is not likely a good solution if you have more than a few polygons though.
Method 2 would be to ensure there is a unique ID field in the point feature class (this could even be calculating the ObjectID/FID into a new field). Then do a spatial join with the polygon's feature class to add the ID of the polygon the point falls within. This will create a new feature class. You will then do a table join of the original points feature class with this newly created feature class (spatial join output) based on that unique ID. Then do a select by attribute where the polygon ID from the original point does/doesn't match the polygon ID from the spatial join results. Finally, based on these selected features calculate the inPolygon field to have the desired value.
If I need to clarify, let me know.