WHOOPS!

I didn't see Ray's last post. Judging by the timestamps, I was in the process of writing my post.
I just built a small app to test some various things... and Ray is correct.

After I added @Rnd to one of my apps, I was getting the same exact values as the Q&A DB it was replacing, so I thought I had solved my problem. The problem values I found were $8.885 & $3.235, which were corrected with @Rnd, so I thought this was solved. But, it looks like @Rnd and element formatting are each following different rules for floating-point rounding.
Bottom line:Mark & Ray have the correct solution. That is, "simply set the OS defaults as needed, and in Sesame specify SYSTEM as the format."
Sorry about the confusion.

##########
EDIT: New bottom line solution ##########

Using the OS settings still allows the raw value to be saved to disk without rounding it to 2 decimal places. This could present a problem if you were to export the data, or if you were to move the application to a computer that did not have the same OS settings for currency display format. Also, it's that raw non-rounded value that will be used by SBasic for other functions. For example, if you are using that value to build a money-to-words line for a check, it will use the raw data, which may not be the same as is displayed in the money element.
After a lot of frustration with the built-in functions not giving me what I wanted, I wrote my own user-defined function. So far, it has consistantly given me the results I wanted - which is to always round money up when the 3rd digit after the decimal point is a "5".
//########## Begin Custom Rounding Function ##########
Function @cuRnd(Value as double, Places as int) as double
var vNeg as int //Used to handle Negatives properly
var vStr as string
if Value < 0
vNeg = -1
else
vNeg = 1
vStr = @Str(@Abs(Value))
if @Instr(vStr, ".") > 0 //Protects whole numbers when rounding to zero places
{
if @Mid(vStr, @Instr(vStr, ".") + Places + 1, 1) >= 5
vStr = @Str( @TN(vStr) + (1 / @Exp(10, Places)) )
vStr = @Del(vStr, @Instr(vStr, ".") + Places + 1, 10)
}
vStr = @Str(@TN(vStr) * vNeg)
Return @TN(vStr)
End Function
//########## End Custom Rounding Function ##########
@cuRnd(V, P) Parameters: V as Double, P as Integer
Returns: Double
Rounds off the value of V to P decimal places. Unlike the regular @Rnd function, the value of P must be a positive number, meaning that it is only designed to round to whole numbers or to tenths, hundredths, thounsandths, etc. - not to the nearest tens, hundreds, etc.