From your description of the problem, I'm not sure how you have set up your cost resources. So I'm going to walk you through an example I have that works for me.
I have a cost item that has capital expenditure on equipment. Go to Resource | View | Resource Sheet. Once in the resource sheet, I add my resource by adding Resource Name "myEquipment". I have two columns that I need exposed, Type and Acrrue At. By default Type is set to "Work" and Acrrue At is set to "Prorated". I change Type to "Cost" and Accrue to "End". You might be tempted to add the Cost column and add a cost at this point, but you will not be able to because now this cost resource has to be tied to the end of a task. Here is how it looks so far...
Now you need to go to the Task Usage view by going to Task | View | Task Usage. Once you are in the Task Usage view, you will need the Cost, Actual Cost, % Complete, Duration, Start, Finish, Actual Start, and Actual Finish to visualize this example.
On the pane on the right, you will need Cost and Actual Cost. You can change what you see by right clicking on the right pane and choosing your options. In my example I also changed the timescale to show months. You can play around with this to get what is needed for your particular schedule.
Next step is to add the cost resource "myEquipment" to a task. I will add it to line 4 in my schedule. After the "myEquipment" is added to the task, right click on the task (not the resource) and choose to "Information". Once in the Task Information box go to the Resources tab. Next to your cost resource go to the Cost column and add the cost amount. Here I added $1,000. Click OK after completing this step.
You Should be able to see that the $1,000 was added to December even though the task spans from end of November to middle of December.
Cost will not incur until you either enter 100% or an Actual Finish Date. The % Complete column will not accept anything less than 100%. You can see the Actual Cost column populated once I entered 100% complete.